升级到Django 1.7之后的相关名称抛出错误

时间:2014-05-14 07:42:34

标签: python django django-models

使用Django1.6时,每件事情都运行良好,但升级到Django1.7时显示“App registry not ready”,所以我在模型中将get_user_model()更改为settings.AUTH_USER_MODEL。

class MyModel(models.Model, SomeMixin):
    content = models.TextField()
    posted_by = models.ForeignKey(settings.AUTH_USER_MODEL,
                              related_name='name1')
    note = models.ForeignKey(SomeModel, related_name='name2')

    created = models.DateTimeField(auto_now_add=True)

现在,在启动服务器时,我收到以下错误消息。

错误: apps.MyModel.posted_by :( fields.E304)'model_field'的反向访问器与'model_field'的反向访问器冲突。     提示:在“model_field”或“model_field”的定义中添加或更改related_name参数。

更改相关不是我可以采用的最佳方式,因为更改相关名称涉及更改大量代码。我在这里错过了什么?我应该寻找什么?任何帮助都将受到高度赞赏。

1 个答案:

答案 0 :(得分:0)

为其中一个字段设置related_name='+'为我解决了类似的问题。请参阅this question

上接受答复的评论