У меня есть модель поста и модель изображения следующим образом:
class PropertyPost(models.Model):
....
class Image(models.Model):
prop_post = models.ForeignKey(
PropertyPost,
related_name='images4thisproperty',
on_delete=models.CASCADE)
и вот их связанные сериализации:
class PropPostSerializer(serializers.HyperlinkedModelSerializer):
images4thisproperty = serializers.HyperlinkedRelatedField(
many=True,
read_only=True,
view_name='image-detail')
class Meta:
model = PropertyPost
fields = (...,images4thisproperty,...)
class ImageSerializer(serializers.HyperlinkedModelSerializer):
prop_post = serializers.SlugRelatedField(queryset=PropertyPost.objects.all(),
slug_field='pk')
class Meta:
model = Image
fields = (
'url',
'photo',
'prop_post',
)
теперь, когда я сериализую свои объекты, вывод json выглядит следующим образом для модели propertypost:
{
"images4thisproperty": [
"http://139.50.80.132/images/4",
"http://139.50.80.132/images/3"
],
}
и выглядит следующим образом для модели изображения:
{
"url": "http://139.50.80.132/images/1",
"photo": "http://139.50.80.132/media/myposts/2019/20190327004444_8e3f5152-a3fd-40f2-857b-e16db3900fee.png",
"prop_post": 1,
},
{
"url": "http://139.50.80.132/images/2",
"photo": "http://139.50.80.132/media/myposts/2019/20190327004450_659c207a-f3e1-471e-b2b0-c33c4708494a.png",
"prop_post": 1,
},
Мне было интересно, могу ли я иметь поле photo модели Image, которое будет сериализовано в моем посте свойств. другими словами, я хотел бы иметь это в моем выводе сериализатора propertypost:
{
"images4thisproperty": [
"http://139.50.80.132/images/4",
"http://139.50.80.132/images/3"
],
"photo": [
"http://139.50.80.132/media/myposts/2019/20190327004444_8e3f5152-a3fd-40f2-857b-e16db3900fee.png",
"http://139.50.80.132/media/myposts/2019/20190327004450_659c207a-f3e1-471e-b2b0-c33c4708494a.png",
]
}
Пожалуйста, дайте мне знать, как я могу это сделать,
Спасибо,