2010-04-09 36 views
6

/mysite的/ project4Django的执行syncdb错误:一个或多个模型没有验证

class notes(models.Model): 
    created_by = models.ForeignKey(User) 
    detail = models.ForeignKey(Details) 

详情和用户在相同的模块即/ mysite的/ PROJECT1 在PROJECT1模型我已经定义

class User(): 
     ...... 

    class Details(): 
     ...... 

当DB我同步有一个错误,说

Error: One or more models did not validate: project4: Accessor for field 'detail' clashes with related field . Add a related_name argument to the definition for 'detail'.

这怎么解决..

感谢..

+0

如果它对任何人都有用,我得到了同样的错误,因为我使用了第三方lib,taggit,这是我引用但未放入安装的应用程序类别中的。 – RussellStewart 2013-11-04 03:11:08

回答

8

哎呀,我们只是有这样一个;我回答了...

你有一些外键,django无法为其生成唯一名称。

您可以通过将“related_name”参数添加到模型中的foreignkey字段定义中来提供帮助。例如:

class notes(models.Model): 
    created_by = models.ForeignKey(User, related_name="note_created_by_user") 
    detail = models.ForeignKey(Details, related_name="noted_and_detailed") 

查看此处查看更多。 http://docs.djangoproject.com/en/dev/ref/models/fields/#django.db.models.ForeignKey.related_name

相关问题