Django Rest Framework, Почему требуется отдельный класс сериализации для полей изображения? - PullRequest
0 голосов
/ 21 апреля 2020

При сериализации модели, содержащей поле изображения, требовался отдельный класс сериализации. Почему мы не можем сериализовать модель полностью в одном классе?

Serializer.py

class ProfileSerializer(serializers.ModelSerializer):
    user = serializers.StringRelatedField(read_only=True)
    avatar = serializers.ImageField(read_only=True)

    class Meta:
        model = Profile
        fields = '__all__'

class AvatarSerializer(serializers.ModelSerializer):
    class Meta:
        model = Profile
        fields =('avatar',)

models.py

class Profile(models.Model):
    user = models.OneToOneField(User,on_delete=models.CASCADE)
    bio = models.CharField(max_length=100,blank=True)
    avatar = models.ImageField(null=True,blank=True)

    def __str__(self):
        return self.user.username

Я следую учебному пособию в Udemy GitLink: https://github.com/pymike00/The-Complete-Guide-To-DRF-and-VueJS/tree/master/05-DRF-LEVEL-THREE/profilesapi/profiles/api

...