django 属性错误:“Settings”对象没有属性“ROOT_URLCONF”

ffvjumwh  于 2023-04-22  发布在  Go
关注(0)|答案(4)|浏览(303)

从我的最后一个问题Error: No module named psycopg2.extensions,我已经更新了我的mac操作系统到Mountain Lion并安装了Xcode。我还使用“sudo port install py 27-psycopg 2”安装了psycopg 2。我现在试图运行“pythonmanage.pyrunserver”,但收到此错误

AttributeError: 'Settings' object has no attribute 'ROOT_URLCONF'

任何帮助如何解决这个问题,让我的本地主机运行?

2izufjch

2izufjch1#

Django文档:
Django设置文件包含Django安装的所有配置。当你使用Django时,你必须告诉它你正在使用哪些设置。通过使用环境变量DJANGO_SETTINGS_MODULE来做到这一点。
DJANGO_SETTINGS_MODULE的值应该使用Python路径语法,例如mysite.settings。注意设置模块应该在Python导入搜索路径上。
然后呢

ROOT_URLCONF

  • 默认值:未定义 *

一个字符串,表示指向根URLconf的完整Python导入路径。例如:“mydjangoapps.urls”。可以通过在传入的HttpRequest对象上设置属性urlconf来覆盖每个请求。有关详细信息,请参阅Django如何处理请求。

bpsygsoo

bpsygsoo2#

如果你使用多个设置文件,一定要导入所有其他设置文件中的基本设置。这就是我得到这个错误的原因。

rseugnpd

rseugnpd3#

如果你正在处理一个Django项目,你的项目的根(ROOT_URLCONF=变量)没有在你的settings.py文件中定义,或者至少它没有正确定义。
如果你没有settings.py文件,这段代码应该可以解决这个问题:

from django.conf import settings

settings.configure(
# ...
    ROOT_URLCONF=__name__,
# ...
    ),
)

它的作用是指定项目的根目录runserver知道在哪里可以找到项目。
如果确实有一个settings.py文件,那么找到该变量并将__name__添加到其中。

4ktjp1zp

4ktjp1zp4#

直接导入项目设置可能会导致以下情况:

from config import settings  # bad

from django.conf import settings # good

相关问题