Код: Выделить всё
class ClientProfileDetail(
mixins.RetrieveModelMixin, mixins.UpdateModelMixin, viewsets.GenericViewSet
):
permission_classes = [IsOwnerOrAdmin]
queryset = ClientProfile.objects.all()
serializer_class = ClientProfileSerializer
def get_object(self):
queryset = self.get_queryset()
obj = get_object_or_404(queryset, pk=self.request.user)
return obj
< /code>
Я зарегистрировал Viewset, используя маршрутизатор по умолчанию: < /p>
router.register(r"me", ClientProfileDetail)
< /code>
Но, хотя я не использую для URL, маршрутизатор регистрирует эти URL: < /p>
profile/ ^me/(?P
[^/.]+)/$ [name='clientprofile-detail']
profile/ ^me/(?P[^/.]+)\.(?P[a-z0-9]+)/?$ [name='clientprofile-detail']
Переопределение get_object (), как объяснено здесь: Repriefiveiview без поля поиска? не работал
Подробнее здесь: https://stackoverflow.com/questions/643 ... on-viewset