2013-08-14 10 views
4

Я столкнулся с этой проблемой, но, к сожалению, пока не знаю, как ее исправить. Форма отлично отображается, я ввожу информацию и получаю ошибку CSRF. Приведенная причина - token missing or incorrect.Недопустимый токен Dango 403 CSRF

Вид:

def eventSell(request, id): 
    c = {} 
    c.update(csrf(request)) 
    event = SquidEvent.objects.get(pk = id) 
    listing_form = ListingForm(request.POST) 
    if request.user.is_authenticated(): 
     if request.method == 'POST': 
      listing_form = ListingForm(request.POST) 
      if listing_form.is_valid(): 
       cd = listing_form.cleaned_data 
       user = request.user 
       item = Object(price = cd['price'], seller = user) 
       item.save() 
       return HttpResponseRedirect(reverse('tixeng:index'), c) 
      #print listing_form 
     else: 
      return render_to_response('tixeng/list.html', {'event' : event, 'form' : listing_form}, c) 
    else: 
     return HttpResponseRedirect(reverse('allauth.account.views.login')) 

Вот мой шаблон:

<form action="{% url 'app:eventSell' event.id %}" method="post"> 
{% csrf_token %} 
{{ form }} 
<input type="submit" value="Submit"> 
</form> 

Я думаю, что я сделал все правильно, я не уверен, что вызывает ошибку CSRF. Кроме того, в случае ее соответствующего я следовал наряду с этим в качестве руководства:

http://www.djangobook.com/en/2.0/chapter07.html

+1

возможно дубликат [CSRF маркер отсутствует или неправильно] (http://stackoverflow.com/questions/8089224/csrf-token-missing-or-incorrect) – Brandon

+0

пытаются снять csrf (запрос) и сохранить только запрос, и какие настройки вы установили для промежуточного программного обеспечения для csrf – drabo2005

+0

Эта книга древняя. Следуйте за документацией. –

ответ

0

context_instance устарел с версии 1.8. Вы можете использовать:

return render(request, 'admin/match_main.html', RequestContext(request, locals())) 
Смежные вопросы