Мне нужно получить альбомы с соответствующими изображениями. У меня есть два альбома в 1-м цикле abc и abc123 и два изображения в альбоме abc и 3 изображения в альбоме abc123, но мой ответвозвращает 5 изображений в каждом альбоме.Я не могу создать правильный ответ.
models.py
class Upload(models.Model):
image=models.ImageField(upload_to='upload/', blank=True, null=True)
user = models.ForeignKey(User, on_delete=models.CASCADE)
# url= models.CharField(max_length=500)
def __str__(self):
return str(self.id)
class Album(models.Model):
name = models.CharField(max_length=128)
user = models.ForeignKey(User, on_delete=models.CASCADE)
def __str__(self):
return str(self.name)
class AlbumImage(models.Model):
album = models.ForeignKey(Album, on_delete=models.CASCADE)
image = models.ForeignKey(Upload, on_delete=models.CASCADE)
views.py
def getalbum(self,request):
albums=Album.objects.filter(user=request.user)
album={}
image_list={}
all_results=[]
all_images=[]
for a in albums:
album_images=AlbumImage.objects.filter(album=a)
for i in album_images:
image_object=Upload.objects.get(id=str(i.image))
image_list=str(image_object.image)
all_images.append(image_list)
album[a.name]=all_images
all_results.append(album)
return Response(all_results)
ответ
[
{
"abc": [
"upload/images_aPWBEcp.jpeg",
"upload/images.jpeg",
"upload/ic_id_card_placeholder_N0x2KP9.png",
"upload/images_jocZcBu.jpeg",
"upload/ic_id_card_placeholder_N0x2KP9.png"
],
"abc123": [
"upload/images_aPWBEcp.jpeg",
"upload/images.jpeg",
"upload/ic_id_card_placeholder_N0x2KP9.png",
"upload/images_jocZcBu.jpeg",
"upload/ic_id_card_placeholder_N0x2KP9.png"
]
}
]
abc альбом
upload / images_aPWBEcp.jpeg
upload / images.jpeg
abc123 album
upload / ic_id_card_placeholder_N0x2KP9.png
upload / images_jocZcBu.jpeg
upload / ic_id_card_placeholder_N0x2KP9.png