我正在创建一个名为Tickets的新模型,我希望确保始终为其分配有效的用户ID。
我正在使用AUTH_PROFILE_MODULE
来设置配置文件,当我尝试运行syndb时,该配置文件也会出现错误 NameError:name'User'未定义。
如何设置外键以确保始终如此?
## tickets/models.py
class Ticket(models.Model):
user = models.ForeignKey(User,)
# More model stuff.
# accounts/models.py
class UserProfile(models.Model):
user = models.ForeignKey(User, unique=True)
答案 0 :(得分:21)
所以问题是我错过了对我模特的导入。
from django.contrib.auth.models import User
答案 1 :(得分:3)
为了供将来参考,根据Django documentation,建议像这样参考用户模型:
from django.conf import settings
from django.db import models
class Article(models.Model):
author = models.ForeignKey(
settings.AUTH_USER_MODEL,
on_delete=models.CASCADE,
)