Каков правильный порядок определения декораторов в представлениях django

Я хочу установить более одного декоратора для моего представления функции в django. Проблема в том, что я не могу понять, каким должен быть порядок декораторов.

Например, вот какой вид у меня есть:

@permission_classes([IsAuthenticated])
@api_view(["POST"])
def logout(request):
    pass

В этом случае первый декоратор никогда не применяется! ни когда запрос POST, ни когда GET!

Когда я меняю порядок на следующий:

@api_view(["POST"])
@permission_classes([IsAuthenticated])
def logout(request):
    pass

последний декоратор применяется перед первым, что не соответствует нужному мне порядку.

Я хочу, чтобы сначала применялся декоратор @api_view(["POST"]), а затем @permission_classes([IsAuthenticated]).

Как мне это сделать?

Это правильный способ упорядочивания 'api_view' рассматривать представление как API представление, декоратор которого определен restframework.

from rest_framework.decorators import api_view, permission_classes

@api_view(["POST"])
@permission_classes([IsAuthenticated])
def logout(request):
    pass
Вернуться на верх