Код: Выделить всё
class CustomerSerializer(serializers.ModelSerializer):
class Meta:
model = Customer
fields = ('id', 'name', 'images')
read_only_fields = ('id',)
class ImageSerializer(serializers.ModelSerializer):
class Meta:
model = Image
fields = ('id', 'name', 'customer')
read_only_fields = ('id',)
< /code>
Это то, что я получаю от ответа: < /p>
[
{
'id': 1,
'name': 'John Doe',
'images': [
1,
2,
3,
4,
...
]
}
...
]
Желаемый результат будет:
Код: Выделить всё
[
{
'id': 1,
'name': 'John Doe',
'images': [
'foo.jpg',
'bar.jpg',
'foobar.jpg',
'lorem.jpg',
...
]
}
...
]
class CustomerSerializer(serializers.ModelSerializer):
image_names = serializers.SerializerMethodField()
def get_image_names(self, obj):
return obj.images.name
class Meta:
model = Customer
fields = ('id', 'name', 'image_names')
read_only_fields = ('id',)
< /code>
Дополнительная информация < /p>
Примеры модели: < /p>
class Customer(models.Model):
name = models.CharField()
class Image(models.Model):
name = models.CharField()
customer = models.ForeignKey(
Customer, related_name='images', on_delete=models.CASCADE)
< /code>
Пожалуйста, дайте мне знать, если что -то неясно, и я обновлю вопрос. Спасибо.
Подробнее здесь: https://stackoverflow.com/questions/634 ... ted-fields