Я создаю SAAS как проект, и, похоже, не могу обернуть мой мозг динозавра вокруг этой системы аутентификации. Я начал катить свою собственную систему, прежде чем понял, что вы можете добавить к обычной системе аутентификации. Это совершенно неправильно? Должен ли я как-то расширить модель User, но при этом включить все свои собственные атрибуты (имя пользователя, пароль и т. Д.)?
from django.db import models
from django.contrib.auth.models import User
from annoying.fields import AutoOneToOneField
from myproject.core.modelfields import LowerAlphanumericField
from myproject.apps.account.models import Account
class Administrator(models.Model):
"""
Administrator for an Account (application holds multiple accounts as it is a SAAS).
"""
account = models.ForeignKey(Account)
user = AutoOneToOneField(User, primary_key=True)
name = models.CharField(max_length=255)
email = models.EmailField()
username = LowerAlphanumericField(max_length=30)
password = models.CharField(max_length=255)
Если я посещаю http://127.0.0.1:8080/admin/auth/user/3/, я получаю сообщение об ошибке, но первичным ключом для третьего созданного мной объекта администратора является 3 (который, как можно предположить, является первичным ключом для соответствующего объекта пользователя. Я что-то упустил. Кроме того, мне нужно создать поле пароля и все это барахло здесь, или, скорее, я должен?