未检测到 Django settings.py
Posted
技术标签:
【中文标题】未检测到 Django settings.py【英文标题】:Django settings.py not being detected 【发布时间】:2012-12-07 11:56:24 【问题描述】:我对 Django 很陌生,我在让我的 settings.py 正确加载时遇到了一些困难。我收到以下错误:
/admin 配置不当
将 'django.contrib.admin' 放入您的 INSTALLED_APPS 设置中,以便 使用管理应用程序。
但是,我的 settings.py INSTALLED_APPS 如下所示:
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.contrib.admin',
'squaredcrm' )
查看错误日志,我注意到它没有发现我对已安装应用的任何更改:
Django 版本:1.4.3 Python 版本:2.7.3 已安装的应用程序:('django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', 'django.contrib.messages', 'django.contrib.staticfiles') 已安装 中间件:('django.middleware.common.CommonMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware')
我这辈子都想不通。任何其他更改似乎都在起作用,但此字段不会更新。有什么想法吗?
【问题讨论】:
【参考方案1】:我知道这是一个愚蠢的问题,但是您在进行更改后是否重新启动了服务器?
默认情况下,Django 的生产(我的意思是基于 Apache,也许还有其他)实例不会在更改时自动重新加载。 Django 开发服务器会自动重新加载,只要你没有明确告诉它不要这样做。
您必须重新启动(或停止然后启动)基于 Apache 的 Django 才能看到文件更改。
重要提示:不要在开发服务器之外运行生产站点。它很慢,很慢,很慢,而且可能以我不知道的方式不安全。
【讨论】:
您先生,真是个天才。我什至没有想到要重新启动 Apache。这解决了我的问题。谢谢大家的帮助,祝大家节日快乐。 我不确定在这个特定问题上做了几次面部植物是否有资格成为“天才”——也许更像是“学习迟缓的人”。 :-)【参考方案2】:如果发现其他更改,这可能是因为 INSTALLED_APPS
在您的 settings.py
文件中的某处被重新定义。
这可能是:
在下一行。 在导入中(可能是from x import *
)。
【讨论】:
您好,感谢您的快速回复。我很感激帮助。可悲的是,settings.py 文件中没有导入,因为该文件中没有其他地方重新定义了 installed_apps。 编辑:我的立场是正确的,这仍然是一个问题。我很抱歉。 要在您的应用程序中配置管理员,请查看this 嗨,这是我配置管理员设置的指南。我被卡住了,因为它没有加载。 这是给我的!在文件开头重写我的 ALLOWED_HOSTS,却没有意识到它已经定义了半页。四年后感谢:-)以上是关于未检测到 Django settings.py的主要内容,如果未能解决你的问题,请参考以下文章
TemplateDoesNotExist :在 Django 上未检测到模板