Доброго времени суток. Есть модель
from django.contrib.auth.models import User
class Reviews(models.Model):
reviews_from = models.ForeignKey(User, related_name='reviews_user',
verbose_name='Отзыв написал')
reviews_text = models.TextField(verbose_name='Текст отзыва')
Есть класс сериализации
class ReviewsSerializer(serializers.ModelSerializer):
class Meta:
model = Reviews
fields = ('reviews_from','reviews_text',)
При post запросе все ок. Но как сделать чтобы при GET запросе возвращался не только ID пользователя, но и его username?
Пробовал добавлять depth=1 в класс Мета, но тогда возвращаются абсолютно все поля модели Юзер, вплоть до хешированого пароля.
Также пытался сделать:
class UserSerializer(serializers.ModelSerializer):
class Meta:
model = User
fields = ('id', 'username')
class ReviewsSerializer(serializers.ModelSerializer):
reviews_from = UserSerializer()
class Meta:
model = Reviews
fields = ('reviews_from','reviews_text',)
Но тогда при создании объекта (POST запросе) у меня требует не только ID пользователя, но еще и его username.
Спасибо за помощь.