Я столкнулся с этой проблемой, но, к сожалению, пока не знаю, как ее исправить. Форма отлично отображается, я ввожу информацию и получаю ошибку 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
возможно дубликат [CSRF маркер отсутствует или неправильно] (http://stackoverflow.com/questions/8089224/csrf-token-missing-or-incorrect) – Brandon
пытаются снять csrf (запрос) и сохранить только запрос, и какие настройки вы установили для промежуточного программного обеспечения для csrf – drabo2005
Эта книга древняя. Следуйте за документацией. –