gpt4 book ai didi

django - 将Django 1.1.1升级到1.3.1,admin.autodiscover()引发异常,询问内容类型

转载 作者:行者123 更新时间:2023-12-04 20:03:18 25 4
gpt4 key购买 nike

我将1.1.1 Django项目切换为1.3.1。在urls.py中调用admin.autodiscover()时,管理框架中的sites.py引发了异常,说明:

ImproperlyConfigured at /
Put 'django.contrib.contenttypes' in your INSTALLED_APPS setting in order
to use the admin application


在settings.py中,我有:

INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
# Uncomment the next line to enable the admin:
'django.contrib.admin',
# Uncomment the next line to enable admin documentation:
# 'django.contrib.admindocs',
'my.app'
)


我检查过的事情:


内容类型框架确实在我的INSTALLED_APPS设置中。
我没有在其他任何地方重复我的INSTALLED_APPS声明
INSTALLED_APPS中的contenttypes条目在admin条目之前列出。
运行django-admin.py shell并导入“ django.contrib.contenttypes”即可。


如果我转到管理中令人反感的行(在check_dependencies中的Django-1.3.1 / django / contrib / admin / sites.py,第164行),我会看到:

if not ContentType._meta.installed:
raise ImproperlyConfigured(...)


如果我注释掉该支票,则可以运行我的项目,并且管理员可以工作。我不确定应如何在模型类型上设置_meta.installed属性,因此下一步该做什么我感到茫然。

我还应注意,相同的Django 1.3.1安装正在使用其他使用类似设置文件的项目。

任何提示或资源将不胜感激!谢谢!

最佳答案

django.contrib.contenttypes包括两个模型:ContentType和ContentTypeManager。我的猜测是,在将dj​​ango.contrib.contenttypes添加到INSTALLED_APPS之后,您还没有运行manage.py syncdb

这将使if not ContentType._meta.installed检查变得可理解:ContentType模型在数据库中尚不可用。

关于django - 将Django 1.1.1升级到1.3.1,admin.autodiscover()引发异常,询问内容类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9398024/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com