我在这里有点傻眼,希望那里有人理解这个问题!
这是上下文:
{'form': <LoginForm bound=False, valid=Unknown, fields=(password;remember;login)>,
'redirect_field_name': 'next',
'redirect_field_value': None,
'signup_url': u'/accounts/signup/',
'site': <Site: brilliantactor.com>,
u'view': <allauth.account.views.LoginView object at 0x10d7dead0>}
请求对象看起来很正常
'<WSGIRequest\npath:/accounts/login/,\nGET:<QueryDict: {}>,\nPOST:<QueryDict: {}>,\nCOOKIES:{\'_ga\': \'GA1.1.908939259.1424705622\',\n \'csrftoken\': \'Ga0urMmd7AgBouS9KeH5V4EQNoyE8cqU\',\n [...]
但是当读取以下行时:
context = make_context(context, request)
输出上下文如下
[{'False': False, 'None': None, 'True': True},
{},
{'form': <LoginForm bound=False, valid=Unknown, fields=(password;remember;login)>,
'redirect_field_value': None,
'redirect_field_name': 'next',
'signup_url': u'/accounts/signup/',
'site': <Site: brilliantactor.com>,
u'view': <allauth.account.views.LoginView object at 0x10d7dead0>}]
由于新的上下文对象没有“请求”键,一些模板标签失败,例如django-allauth
这是一个失败的例子:
我的 TEMPLATE_CONTEXT_PROCESSORS:
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [
join(BASE_DIR, 'templates'),
# insert your TEMPLATE_DIRS here
],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
# Insert your TEMPLATE_CONTEXT_PROCESSORS here or use this
# list if you haven't customized them:
'django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages',
"allauth.account.context_processors.account",
"allauth.socialaccount.context_processors.socialaccount",
],
},
},
]
有没有人见过这个?