Почему не отображается разметка для скрытого поля ввода, когда я использую {{ csrf_token }}
?
Вот фрагмент из моего шаблона:
<form action="." method="post">
{{ csrf_token }}
Я ожидаю чего-то вроде этого:
<form action="." method="post">
<input type="hidden" name="csrfmiddlewaretoken" value="0c90dab91e22382cbaa5ef375f709167">
Но вместо этого это HTML, который сгенерирован:
<form action="." method="post">
0c90dab91e22382cbaa5ef375f709167
Я делал это много раз, и он отлично работает в моих других проектах, но я не знаю, что я пропустил на этот раз.
Мой файл views.py выглядит так:
from django.shortcuts import render_to_response
from django.template import RequestContext
def home(request):
return render_to_response('home.html',
context_instance=RequestContext(request))
Как вы можете видеть, я использую RequestContext. Мои классы промежуточного ПО определяются следующим образом в файле settings.py:
MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
)
Итак, я использую django.middleware.csrf.CsrfViewMiddleware. Кроме того, я на Django 1.3.0. Какие-нибудь идеи там?