【发布时间】:2020-03-26 13:27:33
【问题描述】:
我正在尝试在 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'
State类存在于account.models中,模块名为account
我不知道如何创建用户,因为需要 State 实例。
【问题讨论】:
-
你有循环导入吗? account.models 是否以某种方式导入您的用户模型?检查回溯以遵循导入路径。
标签: django django-models django-users