Проблема при создании UUID в качестве конечной точки во фреймворке Django Rest

Поскольку я новичок в Django, я не могу сделать конечную точку в API в библиотеке rest-framework, как сделать UUID в качестве конечной точки их

class Cart(models.Model):
id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False, max_length=30)
created_at = models.DateTimeField(auto_now_add=True)


class CartItem(models.Model):
cart = models.ForeignKey(Cart, on_delete=models.CASCADE, related_name='items')
product = models.ForeignKey(Product, on_delete=models.CASCADE)
quantity = models.PositiveSmallIntegerField(validators=[MinValueValidator(1)])

As For Serialize data their

class CartSerializer(serializers.ModelSerializer):
id = serializers.UUIDField(read_only=True)

class Meta:
    model = Cart
    fields = ['id']

Для просмотра

class CartViewSet(CreateModelMixin, GenericViewSet):
lookup_field = 'pk:'
queryset = Cart.objects.all()
serializer_class = CartSerializer

Для маршрутизации

from . import views
from pprint import print
from rest_framework_nested import routers



router = routers.DefaultRouter()
router.register('products', views.ProductViewSet,basename='products'),   
router.register('collections', views.CollectionViewSet,basename='collections')
router.register('carts', views.CartViewSet, basename='carts')
pprint(router.urls)

Как решить эту ошибку

[01/Jan/2022 14:47:48] "GET /store/carts/ HTTP/1.1" 405 17010
[01/Jan/2022 14:48:04] "POST /store/carts/ HTTP/1.1" 201 16991
[01/Jan/2022 14:48:15] "OPTIONS /store/carts/ HTTP/1.1" 200 17589
Not Found: /store/carts/fc233c62-14dc-4cbe-a488-5add2c083b81
[01/Jan/2022 14:48:37] "GET /store/carts/fc233c62-14dc-4cbe-a488-5add2c083b81 HTTP/1.1" 404 16322`    

CartViewSet наследует от CreateModelMixin и GenericViewSet, поэтому не реализует действие retrieve.

Вам необходимо наследоваться от RetrieveModelMixin, если вы хотите добавить это действие в свой набор представлений

class CartViewSet(CreateModelMixin, RetrieveModelMixin, GenericViewSet):
    ...
Вернуться на верх