Зачем нужен декоратор @action

Python Junior Без компании
Зачем нужен декоратор @action
Ответы
Декоратор `@action` используется в Django REST Framework для добавления кастомных эндпоинтов к ViewSet. Он позволяет расширить стандартные CRUD-операции (list, create, retrieve и т.д.) дополнительными действиями. Пример: ``` from rest_framework.decorators import action from rest_framework.response import Response class UserViewSet(viewsets.ModelViewSet): @action(detail=True, methods=['post']) def activate(self, request, pk=None): user = self.get_object() user.is_active = True user.save() return Response({'status': 'activated'}) ``` Ключевые особенности: - `detail=True` - действие применяется к конкретному объекту - `methods` - указывает HTTP-методы для эндпоинта - URL по умолчанию: `/{model_name}/{pk}/{action_name}/` - Можно переопределить URL через параметр `url_path`