Django 错误:一个或多个模型未验证:
Posted
技术标签:
【中文标题】Django 错误:一个或多个模型未验证:【英文标题】:Django error : one or more models did not validate: 【发布时间】:2013-02-13 10:53:25 【问题描述】:我正在使用 Netutus http://net.tutsplus.com/tutorials/python-tutorials/building-ribbit-with-django/ 制作应用程序,但在运行 syncdb 时出现此错误。我做了一些研究,发现我必须在 ForeignKey 中放置一个related_field,但我仍然有错误。
Error : one or more models did not validate:
forum.userprofile: Reverse query name for field 'user' ***es with related field 'User.userprofile'. Add a related_name argument to the definition for 'user'.
我的模型.py
from django.db import models
from django.contrib.auth.models import User
import hashlib
class Ribbit(models.Model):
content = models.CharField(max_length=140)#
user = models.ForeignKey(User, related_name="note")
creation_date = models.DateTimeField(auto_now=True, blank=True)
class UserProfile(models.Model):
user = models.OneToOneField(User)
follows = models.ManyToManyField('self', related_name='followed_by', symmetrical=False)
User.profile = property(lambda u: UserProfile.objects.get_or_create(user=u)[0])
【问题讨论】:
【参考方案1】:您是否尝试在 UserProfile 模型中向用户字段添加相关名称参数?
user = models.OneToOneField(User, related_name='user_profile')
至少错误消息是这么说的。
【讨论】:
我要去阅读这个相关字段的文档,下次仔细阅读整个语法。谢谢 mariano 不客气。事实上,感谢你我第一个接受的答案以上是关于Django 错误:一个或多个模型未验证:的主要内容,如果未能解决你的问题,请参考以下文章
Django奇怪的SlugField验证,在clean()之前没有引发错误,返回了未清理的数据