DRFのviewで使えるHTTPメソッドを見分ける


人が作ったAPIを利用するとき用、SWAGGER/OPEN APIが導入されてない環境用。

from rest_framework.generics import RetrieveUpdateDestroyAPIView #

viewのclassが何を継承してるかで見分けていく

クラス GET POST PUT PATCH DELETE
ListAPIView - - - -
RetrieveAPIView - - - -
CreateAPIView - - - -
DestroyAPIView - - - -
UpdateAPIView - - -
ListCreateAPIView - - -
RetrieveUpdateAPIView - -
RetrieveDestroyAPIView - - -
RetrieveUpdateDestroyAPIView -
# 例えばこれは、GET、POST両方OK
class HogeHogeList(ListCreateAPIView):

参考

Documentに書かれてるが早見表的ものが欲しかった

備考

viewが関数とデコレーターで実装されてる場合は、この辺は読んでて全然困らない

@action(methods=['POST'],detail=True)
def register_token(request, code):