我对Python和Django完全不熟悉,但我需要在我的服务器上安装testbedserver-software(我在其中遵循此tutorial)。现在我在运行以下命令时遇到了麻烦:
python manage.py syncdb
显示以下错误:
CommandError: One or more models did not validate:
menu.bookmark: 'user' defines a relation with the model 'auth.User', which has been swapped out. Update the relation to point at settings.AUTH_USER_MODEL.
dashboard.dashboardpreferences: 'user' defines a relation with the model 'auth.User', which has been swapped out. Update the relation to point at settings.AUTH_USER_MODEL.
这是我的manage.py:
#!/usr/bin/env python
import os
import sys
if __name__ == "__main__":
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "controller.settings")
from django.core.management import execute_from_command_line
execute_from_command_line(sys.argv)
这是我的settings.py:
from controller.settings_example import *
# Probably you want to override at least the database configuration:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'controller',
'USER': 'confine',
'PASSWORD': 'confine',
'HOST': 'localhost',
'PORT': '',
}
}
我已经找到了http://grokbase.com/p/gg/django-users/12ar0b12ca/ver-1-5-specifying-custom-user-model-extends-abstractuser-doesnt-work。 但我甚至不知道在哪里应用解决方案。 (我甚至不知道这个问题是基于PostgreSQL,Python或Django的......)
有人可以帮我这个吗?
提前致谢, 格伦
答案 0 :(得分:10)
settings_example.py
{p>你有AUTH_USER_MODEL = 'users.User'
。但是,您使用的应用程序 - menu.bookmark
- 与django.contrib.auth.User
有关系 - 您不能同时拥有这两者。设置AUTH_USER_MODEL
意味着您要用自己的内置Django用户模型替换它。有关详细信息,请参阅http://procrastinatingdev.com/django/using-configurable-user-models-in-django-1-5/。