Get
метод, работающий в конечной точке API с возможностью просмотра, но когда я пытаюсь опубликовать сообщение с помощью своей конечной точки через браузер, он выдает мне эту ошибку: (Мои сериализаторы вложены)
![enter image description here](https://i.stack.imgur.com/izbBL.png)
Это мой serializers.py
и это вложенные серилизаторы
from rest_framework import serializers
from . models import Author, Article, Category, Organization
class OrganizationSerializer(serializers.ModelSerializer):
class Meta:
model = Organization
fields = '__all__'
class AuthorSerializer(serializers.ModelSerializer):
organization = OrganizationSerializer()
class Meta:
model = Author
fields = '__all__'
class CategorySerializer(serializers.ModelSerializer):
class Meta:
model = Category
fields = '__all__'
class ArticleSerializer(serializers.ModelSerializer):
author = AuthorSerializer()
category = CategorySerializer()
class Meta:
model = Article
fields = '__all__'
, а это мой models.py
from django.db import models
import uuid
class Organization(models.Model):
organization_name = models.CharField(max_length=50)
contact = models.CharField(max_length=12, unique=True)
def __str__(self):
return self.organization_name
class Author(models.Model):
name = models.CharField(max_length=40)
detail = models.TextField()
organization = models.ForeignKey(Organization, on_delete=models.DO_NOTHING)
def __str__(self):
return self.name
class Category(models.Model):
name = models.CharField(max_length=100)
def __str__(self):
return self.name
class Article(models.Model):
alias = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
author = models.ForeignKey(Author, on_delete=models.CASCADE, related_name='author')
title = models.CharField(max_length=200)
body = models.TextField()
category = models.ForeignKey(Category, on_delete=models.CASCADE)
иэто мой views.py
(я использую APIView, а не VIewset)
class ArticleDeleteUpdate(DestroyAPIView, UpdateAPIView):
queryset = Article.objects.all()
serializer_class = ArticleSerializer
lookup_field = 'alias'
, и это мой urls.py
path('api/v1/article', views.ArticleListCreateGet.as_view(), name='article2'),
Я работал над этим 10 часов, чтобы решить проблемуно мне не удалось это исправить ...
Я не понимаю, что с этим не так ... эта ошибка испортила мне сон ..
Кто-нибудь может мне помочь, пожалуйста, чтобы решить эту проблему?