Я пытаюсь получить случайную фотографию из каждого альбома из данных, созданных syncr. Модель (сокращенно) выглядит так:Django - выберите случайное фото из каждого альбома
class Album(models.Model):
title = models.CharField(max_length=200)
photos = models.ManyToManyField('Photo')
class Photo(models.Model):
title = models.CharField(max_length=200)
Я пробовал много разных подходов без успеха. Это еще один легкий?
Take 2: Конечный код:
DEF галереи (запрос, template_name = 'galleries.html'):
albums = Album.objects.select_related().all()
album_list = []
for album in albums:
album_list.append({'title':album.title, 'id':album.id, 'photo':album.random_photo()})
return render_to_response(template_name, {
"album_list": album_list,
})
Узнал много от всех этих ответов и в конце концов использовал комбинацию. Большое спасибо всем: Защита галерея (запрос, TEMPLATE_NAME = 'galleries.html'): альбомов = Album.objects.select_related() все() album_list = [] для альбома в альбоме:. album_list. присоединять ({ 'название': album.title 'ID': album.id, 'фото': album.random_photo()}) возвращение render_to_response (template_name, { "album_list": album_list, }) – PhoebeB