Добавить явный сериализатор внутри MyAdsSerializer
.
Настройте AdImage
, чтобы иметь явное значение related_name
на ad
ForeignKey
:
class AdImage(models.Model):
image = models.ImageField(upload_to=get_file_path)
is_primary = models.BooleanField(default=False)
ad = models.ForeignKey(Ad, on_delete=models.CASCADE, related_name='ad_images')
# ^^^^^^^^^^^^^^^^^^^^^^^^
Измените MyAdsSerializer
, например, на наличие сериализаторапод ним, а затем явно назовите ваши поля:
class MyAdsSerializer(serializers.ModelSerializer):
ad_image__images = serializers.CharField(
source='ad_images.image',
many=True,
read_only=True)
class Meta:
model = ads.models.Ad
fields = ('id', 'other_ad_field', 'ad_image__images'