Django 拒绝 运行,抛出 CommandError

Django refusing to run, throwing CommandError

我不得不在服务器变砖后恢复备份,现在 Django 不断抛出系统检查命令错误。

    account.Customer.country: (fields.E300) Field defines a relation with model 'Country', which is either not installed, or is abstract.
account.Customer.state: (fields.E300) Field defines a relation with model 'State', which is either not installed, or is abstract.
account.Customer.user: (fields.E304) Reverse accessor for 'Customer.user' clashes with reverse accessor for 'Customer.user'.
        HINT: Add or change a related_name argument to the definition for 'Customer.user' or 'Customer.user'.
account.Customer.user: (fields.E305) Reverse query name for 'Customer.user' clashes with reverse query name for 'Customer.user'.
        HINT: Add or change a related_name argument to the definition for 'Customer.user' or 'Customer.user'.
account.CustomerNote.author: (fields.E304) Reverse accessor for 'CustomerNote.author' clashes with reverse accessor for 'CustomerNote.author'.
        HINT: Add or change a related_name argument to the definition for 'CustomerNote.author' or 'CustomerNote.author'.
account.EmailChangeRequest.user: (fields.E304) Reverse accessor for 'EmailChangeRequest.user' clashes with reverse accessor for 'EmailChangeRequest.user'.
        HINT: Add or change a related_name argument to the definition for 'EmailChangeRequest.user' or 'EmailChangeRequest.user'.
account.SecurityAnswer.user: (fields.E304) Reverse accessor for 'SecurityAnswer.user' clashes with reverse accessor for 'SecurityAnswer.user'.
        HINT: Add or change a related_name argument to the definition for 'SecurityAnswer.user' or 'SecurityAnswer.user'.
account.UserSession.user: (fields.E304) Reverse accessor for 'UserSession.user' clashes with reverse accessor for 'UserSession.user'.
        HINT: Add or change a related_name argument to the definition for 'UserSession.user' or 'UserSession.user'.
customer.Customer.user: (fields.E304) Reverse accessor for 'Customer.user' clashes with reverse accessor for 'Customer.user'.
        HINT: Add or change a related_name argument to the definition for 'Customer.user' or 'Customer.user'.
customer.Customer.user: (fields.E305) Reverse query name for 'Customer.user' clashes with reverse query name for 'Customer.user'.
        HINT: Add or change a related_name argument to the definition for 'Customer.user' or 'Customer.user'.
customer.CustomerNote.author: (fields.E304) Reverse accessor for 'CustomerNote.author' clashes with reverse accessor for 'CustomerNote.author'.
        HINT: Add or change a related_name argument to the definition for 'CustomerNote.author' or 'CustomerNote.author'.
security.EmailChangeRequest.user: (fields.E304) Reverse accessor for 'EmailChangeRequest.user' clashes with reverse accessor for 'EmailChangeRequest.user'.
        HINT: Add or change a related_name argument to the definition for 'EmailChangeRequest.user' or 'EmailChangeRequest.user'.
security.SecurityAnswer.user: (fields.E304) Reverse accessor for 'SecurityAnswer.user' clashes with reverse accessor for 'SecurityAnswer.user'.
        HINT: Add or change a related_name argument to the definition for 'SecurityAnswer.user' or 'SecurityAnswer.user'.
security.UserSession.user: (fields.E304) Reverse accessor for 'UserSession.user' clashes with reverse accessor for 'UserSession.user'.
        HINT: Add or change a related_name argument to the definition for 'UserSession.user' or 'UserSession.user'.

这个版本和数据库以前工作过。我检查了 settings.py 并安装了它抱怨的应用程序。此外,related_name 错误似乎是在引用它们自己。

我已经尝试清除内容类型并使用 django.contrib.contenttypes.management 模块中的 update_all_contenttypes 方法重新填充它们。 table 现在似乎是正确的,但仍然出现这些错误。

好的,在我发布这个之后我就明白了。在项目重组之前,我有一些流氓 models.pyc 文件,它们定义相同的模型但在不同的应用程序中。清除所有这些文件解决了这个问题。我想我需要将那部分作为我的部署过程。