django

TIL230412 method로 put, delete 쓰기

베스트오버 2023. 4. 13. 00:06

html form에서는 GET, POST만 지원하기 때문에
PUT과 DELETE를 하려면
django-method-override를 설치해야 했다.

https://pypi.org/project/django-method-override/

 

django-method-override

Django Middleware for HTTP Method Override Form Params & Header

pypi.org

 

pip install django-method-override



추후 requirements.txt에 추가하기

settings.py의 MIDDLEWARE에
'django.middleware.csrf.CsrfViewMiddleware' , 
    'method_override.middleware.MethodOverrideMiddleware' ,
추가

settings.py의 INSTALLED_APPS에
'method_override',
추가

html의 폼 위아래에

{%  load  method_override  %} 
<form>
{% csrf_token %}
{%  method_override  'DELETE'  %} 
</form>



추가


views.py에
from django.views.decorators.http import require_http_methods