Python Django验证模型错误:name';用户';没有定义
1。错误代码:Python Django验证模型错误:name';用户';没有定义,python,django,django-models,django-admin,django-authentication,Python,Django,Django Models,Django Admin,Django Authentication,1。错误代码: from django.db import models class Bookmark(models.Model): author = models.ForeignKey(User) title = models.CharField(max_length=200, blank=True, default="") url = models.URLField() timestamp = models.DateTimeField(auto_now_ad
from django.db import models
class Bookmark(models.Model):
author = models.ForeignKey(User)
title = models.CharField(max_length=200, blank=True, default="")
url = models.URLField()
timestamp = models.DateTimeField(auto_now_add=True)
def __unicode__(self):
return "%s by %s" % (self.url, self.author.username)
class Tag(models.Model):
bookmarks = models.ManyToManyField(Bookmark)
slug = models.CharField(max_length=50, unique=True)
def __unicode__(self):
return self.slug
NameError:未定义名称“用户”
您正在此处引用
User
:author=models.ForeignKey(User)
,但忘记在models.py中导入User
将其放在models.py
文件的顶部
from django.contrib.auth.models import User
编辑:
对于可配置的用户模型,导入用户模型的另一种(较新)方法是:
from django.contrib.auth import get_user_model
User = get_user_model()
返回的配置用户模型将基于设置AUTH\u User\u model
from django.contrib.auth import get_user_model
User = get_user_model()