Я получаю сообщение об ошибке проверки CSRF при попытке сделать простую форму из учебника. Я сделал небольшое исследование того, что проверка CSRF на самом деле, и, насколько мне известно, для ее использования вам нужен один из тегов csrf_token в вашем html, но у меня нет этого
Здесь мой шаблон:
<form action="/testapp1/contact/" method="post">
{{ form.as_p }}
<input type="submit" value="Submit" />
</form>
Довольно простой, расположенный в contact.html
Здесь мой urlconf: from django.conf.urls.defaults import *
urlpatterns=patterns('testapp1.views',
(r'^$', 'index'),
(r'^contact/$','contact')
)
Имя приложения - testapp1. Когда я печатаю свой url (http://localhost: 8000/testapp1/contact), я правильно перехожу к форме. Затем, когда я отправляю форму, я получаю ошибку проверки.
Вот мой взгляд, хотя я не думаю, что это важно:
def contact(request):
if request.method == 'POST': # If the form has been submitted...
form = ContactForm(request.POST) # A form bound to the POST data
if form.is_valid(): # All validation rules pass
subject = form.cleaned_data['subject']
message = form.cleaned_data['message']
sender = form.cleaned_data['sender']
cc_myself = form.cleaned_data['cc_myself']
recipients = ['[email protected]']
if cc_myself:
recipients.append(sender)
print 'Sending Mail:'+subject+','+message+','+sender+','+recipients
return HttpResponseRedirect('/thanks/') # Redirect after POST
else:
form = ContactForm() # An unbound form
return render_to_response('contact.html', {
'form': form,
})