Django CMS FieldError:类“ PageUser”中的本地字段“ created_by”与基类“ User”中名称相似的字段发生冲突

时间:2018-08-20 15:40:31

标签: python django django-cms

我在python 3.5上已有一个django 1.9应用程序,我正在尝试将django cms引入其中。现在,我在这里按照手动安装说明进行操作:http://docs.django-cms.org/en/release-3.3.x/how_to/install.html

我想使用现有的postgres db存储cms数据。现在,我要做的就是将cms应用程序以及中间件和模板添加到INSTALLED_APPS中,所有这些都在设置文件中。当我启动我的应用程序时,我得到了FieldError:

django.core.exceptions.FieldError: Local field 'created_by' in class 'PageUser' clashes with field of similar name from base class 'User'

我遍历了此http://docs.django-cms.org/en/develop/reference/configuration.html#custom-user-requirements,并确保我们的自定义用户正确继承并且具有正确的字段和方法。

我们的自定义用户模型确实从自定义混合继承而来,该自定义混合向用户模型添加了created_by。

我找不到解决此问题的解决方法。任何建议将不胜感激。

1 个答案:

答案 0 :(得分:0)

您应该重命名该字段。像这样

class PageUser(User):
    page_user_created_by = models.ForeignKey(settings.AUTH_USER_MODEL, 
                                             related_name="created_users", db_column='created_by')

您可以详细了解here