Django 1.2 konsekwentnie daje mi ten błąd weryfikacji CSRF, gdy wykonuję formularz POST. I "myśleć" Zrobiłem wszystko, co zadane w Django 1.2 Dokumenty, a mianowicie,Django 1.2.4 Weryfikacja CSRF nie powiodła się
Upewnić MIDDLEWARE_CLASSES jest dołączony 'django.middleware.csrf.CsrfViewMiddleware'
Zapewnienie {% csrf_token%}
<form action="/words/new/" method="post"> {% csrf_token %} {{ form.as_p }} <input type="submit" value="Enter" /> </form>
Używaj RequestContext w mojej odpowiedzi
def create(request): if request.method == 'POST': form = DefinitionForm(request.POST) if form.is_valid(): form.save() c = {} return render_to_response('dict/thanks.html',c, context_instance=RequestContext(request)) else: form = DefinitionForm() return render_to_response('dict/create_definition.html', { 'form' : form, })
Należy pamiętać, że akcja GET działa w tej funkcji. Więc myślę, że używam prawa render_to_response.
Próbowałem nawet rzucić dekorator @csrf_protect i nawet to nie działało. Nie mam pomysłów i niedługo się udławię moim laptopem.
Każda rzecz, o której myślisz?
Dzięki!
Sprawdź kod HTML w przeglądarce, aby upewnić się, że pole tokenu csrf tam jest. Następnie zrzuć odpowiedzi POST, aby sprawdzić, czy wraca do widoku. – Spacedman