自定义用户管理器中的外键
Foreign key in custom user manager
我正在尝试在 Django 中创建自定义用户模型,使用 ForeignKey 作为 required_field。
我的经理如下:
from django.contrib.auth.models import BaseUserManager
from .models import State
class CustomUserManager(BaseUserManager):
def create_user(self, email, first_name, state, password=None, **extra_fields):
email = self.normalize_email(email)
user = self.model(email=email, first_name=first_name, state=State(pk=state), **extra_fields)
user.set_password(password)
user.save()
return user
def create_superuser(self, email, first_name, state, password=None, **extra_fields):
email = self.normalize_email(email)
user = self.model(email=email, first_name=first_name, state=State(pk=state), **extra_fields)
user.set_password(password)
user.save()
return user
当尝试通过 manage.py 使用 createsuperuser 时,发生以下异常
from .models import State
ImportError: cannot import name 'State' from 'account.models'
状态class存在于account.models,模块名为account
我不知道如何创建用户,因为需要 State 实例。
用户模型从该模块导入以设置User.objects = CustomUserManager()
。您可以将 State
移动到不同的 module/app 或将此管理器定义移动到模型中。
我正在尝试在 Django 中创建自定义用户模型,使用 ForeignKey 作为 required_field。 我的经理如下:
from django.contrib.auth.models import BaseUserManager
from .models import State
class CustomUserManager(BaseUserManager):
def create_user(self, email, first_name, state, password=None, **extra_fields):
email = self.normalize_email(email)
user = self.model(email=email, first_name=first_name, state=State(pk=state), **extra_fields)
user.set_password(password)
user.save()
return user
def create_superuser(self, email, first_name, state, password=None, **extra_fields):
email = self.normalize_email(email)
user = self.model(email=email, first_name=first_name, state=State(pk=state), **extra_fields)
user.set_password(password)
user.save()
return user
当尝试通过 manage.py 使用 createsuperuser 时,发生以下异常
from .models import State
ImportError: cannot import name 'State' from 'account.models'
状态class存在于account.models,模块名为account
我不知道如何创建用户,因为需要 State 实例。
用户模型从该模块导入以设置User.objects = CustomUserManager()
。您可以将 State
移动到不同的 module/app 或将此管理器定义移动到模型中。