A verificação do Django CSRF falhou. Solicitação abortada. - cookie CSRF não definido
Eu sei que essa pergunta já foi feita antes. Eu tentei quase todas as opções dadas pelas pessoas, mas não consigo resolvê-lo. Eu sou um novato completo, por favor, deixe-me saber onde estou errado.
Estou tentando escrever um formulário simples e bruto. Eu não implementei nenhum mecanismo de autenticação ou sessão até agora (mas, pelo que li, isso não importa para esse problema. Corrija-me se estiver errado).
Quando tento enviar meu formulário, recebo este erro:
Forbidden (403)
CSRF verification failed. Request aborted.
Reason given for failure:
CSRF cookie not set.
Este é o meu código:
Meu Views.py tem este método:
def submit(request):
global alphabet_array
dishes = Dish.objects.all().order_by('name')
if request.method == "POST":
print request.POST['restaurant']
print request.POST['rating']
render_to_response('index.html', {}, context_instance=RequestContext(request))
else:
render_to_response('index.html', {}, context_instance=RequestContext(request))
Muitos disseram que usar o RequestContext resolve esse problema, mas para mim mesmo isso não está funcionando.
O modelo é exibido abaixo:
<form role="form" action="/submit/" method="post">{% csrf_token %}
<div class="form-group">
<label for="">Restaurant Name</label>
<input type="text" name="restaurant" class="form-control" id="">
</div>
<div class="form-group">
<label for="">Rating</label>
<select class="form-control" name="rating">
<option>--</option>
<option>1 (very bad)</option>
<option>2 (bad)</option>
<option>3 (average)</option>
<option>4 (good)</option>
<option>5 (excellent)</option>
</select>
</div>
<button type="submit" class="btn btn-primary btn-block"><i class="fa fa-check-circle"></i> Save</button>
</form>
O middleware_classes em settings.py se parece com:
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',
)
O django.middleware.csrf.CsrfViewMiddleware está lá e está abaixo de 'django.contrib.sessions.middleware.SessionMiddleware'
Meu url.py possui entradas:
url(r'^admin/', include(admin.site.urls)),
url(r'^index/Eu realmente não tenho certeza qual é o problema aqui. Como eu disse, li posts semelhantes aqui e tentei de tudo o que foi mencionado nas respostas. O que eu perdi? Meu navegador é o Chrome e está aceitando cookies.
, 'testapp.views.index'),
url(r'^starts_with/(?P<alphabet>.+)/dish/(?P<dish_id>\d+)/Eu realmente não tenho certeza qual é o problema aqui. Como eu disse, li posts semelhantes aqui e tentei de tudo o que foi mencionado nas respostas. O que eu perdi? Meu navegador é o Chrome e está aceitando cookies.
, 'testapp.views.alphabet_dish'),
url(r'^starts_with/(?P<alphabet>.+)/Eu realmente não tenho certeza qual é o problema aqui. Como eu disse, li posts semelhantes aqui e tentei de tudo o que foi mencionado nas respostas. O que eu perdi? Meu navegador é o Chrome e está aceitando cookies.
, 'testapp.views.alphabet'),
url(r'^submit/Eu realmente não tenho certeza qual é o problema aqui. Como eu disse, li posts semelhantes aqui e tentei de tudo o que foi mencionado nas respostas. O que eu perdi? Meu navegador é o Chrome e está aceitando cookies.
, 'testapp.views.submit'),
Eu realmente não tenho certeza qual é o problema aqui. Como eu disse, li posts semelhantes aqui e tentei de tudo o que foi mencionado nas respostas. O que eu perdi? Meu navegador é o Chrome e está aceitando cookies.