Ошибка вложенного сериализатора. Объект 'str' не имеет атрибута 'values'
Я сейчас работаю над приложением типа социальной сети, где я хочу получить данные о группе и пользователях, которые опубликовали пост. Проблема возникает, когда я использую вложенный сериализатор. в сериализаторе постов сериализатор групп работает отлично, когда я пишу сериализатор пользователей, он выдает следующую ошибку
packages/rest_framework/serializers.py", line 368, in _readable_fields
for field in self.fields.values():
AttributeError: 'str' object has no attribute 'values'
[26/May/2022 09:01:21] "GET /group/posts/3 HTTP/1.1" 500 123293
Вот мои модели и серийники
пост-модель
class Post(models.Model):
post_data = models.FileField(upload_to='group_post', null=True)
post_description = models.TextField(null=True,blank=True)
post_time = models.DateTimeField(auto_now=True)
post_group = models.ForeignKey(to='Group', on_delete=models.DO_NOTHING, related_name='post_group')
post_user = models.ForeignKey(to=MyUser, on_delete=models.DO_NOTHING, related_name='post_user')
class Meta:
db_table = "group\".\"Post"
постовые сериализаторы
class PostSerializer(serializers.ModelSerializer):
post_group = GroupSerializer(read_only=True)
post_user = UserSerializer(read_only=True)
class Meta:
model = Post
fields = '__all__'
Модель пользователя
class MyUser(AbstractBaseUser):
first_name = models.CharField(max_length=50)
last_name = models.CharField(max_length=50)
email = models.EmailField(verbose_name='Enter Email', max_length=50,unique=True)
password = models.CharField(max_length=1000)
active = models.BooleanField(default=True)
staff = models.BooleanField(default=False)
admin = models.BooleanField(default=False)
user serialzer
class UserSerializer(serializers.ModelSerializer):
class Meta:
model = MyUser
fields = '__all__'