【发布时间】:2013-02-19 02:28:11
【问题描述】:
我在我的 Django 1.5c1 项目(目前在 github 上的 Django 1.5 分支的最新版本上运行)中有一个自定义用户模型(它实际上被命名为 User,因为我认为不需要另外命名)。 AUTH_USER_MODEL 在我的设置中正确定义,所以auth 模块可以正常工作,我可以登录等等。
但是,启用自定义用户模块后,管理站点将无法工作。当我将admin.autodiscover() 添加到我的urls.py 时,网站上的每个页面(不仅仅是管理页面)都会引发NotRegistered 异常并显示The model User is not registered。回溯显示admin.autodiscover() 正在尝试调用admin.site.unregister(User),显然是在它注册该模型之前。
我尝试将我的用户模型重命名为 User 以外的名称,但它似乎不起作用。我还尝试为该应用程序创建自己的admin.py,然后尝试在admin.autodiscover() 运行之前使用admin.py 中指定的自定义UserAdmin 模型手动注册我的自定义User 模型,但这实际上导致了单独的异常说User已经注册了。
接下来我应该怎么做才能让admin.autodiscover() 正常工作?
【问题讨论】:
标签: python django django-admin django-authentication