我正在使用pycharm项目django工作。 每当我做“运行”的事情,我会去我的主页或“http://127.0.0.1:8000/ ...” 一切正常,但我收到了这个错误:
C:\用户\ elmou \应用程序数据\本地\程序\的Python \ Python36-32 \ lib中\ importlib__init __ PY:126: RemovedInDjango110Warning:django.core.context_processors是 不赞成使用django.template.context_processors。返回 _bootstrap._gcd_import(name [level:],package,level)
我应该更改django版本还是什么? 感谢。
settings.py文件:
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.core.context_processors.request',
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
答案 0 :(得分:1)
答案 1 :(得分:1)
警告建议您更新设置中的上下文处理器,以使用django.template.context_processors
代替django.core.context_processors
。
在您的情况下,导致警告的是request
处理器(第一项)。您已在列表中添加新路径django.template.context_processors.request
,因此只需删除django.core.context_processors.request
即可。您的上下文处理器将是:
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
如果您需要更具体的指示,请编辑您的问题以包含您的设置文件中的上下文处理器列表。
答案 2 :(得分:0)
我认为Context处理器曾经在早期版本的django中的settings.py中以自己的元组排列列出,但是这已被更改并最终在Dango 1.10中弃用,因此删除了RemovedInDjango110Warning。
现在,您应该将您的上下文处理器列为settings.py文件的Templates设置中的选项。看起来有点像这样的东西:
TEMPLATES = [
{
'BACKEND': '.......',
'DIRS': '........',
'OPTIONS':{
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
...
...
...
]
},
},
]
更高版本中的startproject命令实际上应该为您设置。