字段定义了与模型' MODEL'的关系,该模型未安装或是抽象的

时间:2016-12-14 12:57:02

标签: django django-models

在Django中使用自定义用户模型就像生活在地狱中一样。在花了无数个小时试图完成它之后,现在我遇到了新问题:一旦我添加了一些依赖于我的自定义用户模型的其他应用程序,我会看到: 例如,一旦我添加admin.LogEntry.user: (fields.E300) Field defines a relation with model 'main.Usr', which is either not installed, or is abstract. admin.LogEntry.user: (fields.E307) The field admin.LogEntry.user was declared with a lazy reference to 'main.usr', but app 'main' doesn't provide model 'usr'. ,我就会看到错误

AUTH_USER_MODEL = 'main.Usr'

INSTALLED_APPS = [
    'django.contrib.auth',
    'main', # my app
    'django.contrib.admin',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.staticfiles',
    'debug_toolbar',
    'django.contrib.postgres',
]

我的设置就像

MSSticker

1 个答案:

答案 0 :(得分:0)

我必须禁止这些系统检查才能加载django。 我把它放在我的settings.py

SILENCED_SYSTEM_CHECKS = ['fields.E300', 'fields.E307']

我不建议启用此行,除非您确实知道指定模型的表确实存在于数据库中。