Ostatnio zacząłem konwertować niektóre funkcje widoku na widoki ogólne. Konwertowanie funkcji, która miała obsłużyć żądanie POST (za pośrednictwem formularza AJAX), powoduje wyjątek HTTP "Metoda 405". Jestem pewien, że jest nie o CSRF: Ajax wysyła ważny token, zmieniając ogólny widok z powrotem na funkcję widoku (w przypadku testowym są zasadniczo takie same) rozwiązuje problem, i - na koniec - dla celów testowych, Wyłączyłem oprogramowanie pośredniczące CSRF. Czy ktoś miał podobne problemy?django: ogólny widok klasy + POST = HTTP 405 (Metoda niedozwolona)
13
A
Odpowiedz
17
Przypuszczam, że używasz widoków opartych na klasach. Jeśli tak, to musisz zdefiniować metodę post
w swoim widoku lub użyć mixinu, który to robi (na przykład: django.views.generic.edit.ProcessFormView
). Jeśli chcesz w pełni zrozumieć, dlaczego jest to konieczne, spójrz na dispatch
metodę .
dzięki, metoda wysyłki wyjaśnia wszystko! – migajek
Na końcu nie kończyłem adresu URL. To był mój problem. – Antony