2

将 django 从 1.4 更新到 1.5.1 现在它抛出这个:

弃用警告:“setup_environ”功能已弃用,您可能需要更新“manage.py”;请参阅 Django 1.4 发行说明 ( https://docs.djangoproject.com/en/dev/releases/1.4/ )。

首先,我已经在 v1.4 上,为什么现在显示这个?出色地..

manage.py 已经有了这个:

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings")

但很少有应用程序使用它:

from django.core.management import setup_environ
from mysite import settings
setup_environ(settings)

如果我评论上面的代码,它会抛出一个错误:

django.core.exceptions.ImproperlyConfigured:请求设置 AUTH_USER_MODEL,但未配置设置。您必须在访问设置之前定义环境变量 DJANGO_SETTINGS_MODULE 或调用 settings.configure()。

因此,我调用了“settings.configure”并将上面的代码替换为:

from django.conf import settings
from mysite import settings as mysettings
settings.configure(mysettings, DEBUG=True)

但它仍然抛出错误!

AttributeError:“模块”对象没有属性“LOGGING_CONFIG”

基本上'setup_environ'正在工作,但有DeprecationWarning,我怎么能骑它?显然,我将发行说明 1.4 变红了,但无法弄清楚..

4

1 回答 1

8

我最终添加:

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings") 

不仅在我的 manage.py 文件中,而且在我调用“setup_environ”的应用程序文件中。所以,我替换了这段代码:

from django.core.management import setup_environ
from mysite import settings
setup_environ(settings)

和:

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings") 

没有 DeprecationWarning,似乎它的工作!

于 2013-07-30T02:27:22.603 回答