Как в шаблонизаторе Jinja правильно вывести данные в шаблон (несколько фотографий к одной машине)
Пишу сайт на Django4 по продаже битых автомобилей. На главной странице делаю список лотов. В каждом лоте есть слайдер с фотками.
В базе реализована связь "один ко многим" (один автомобиль имеет множество фото).
models.py
class Car(models.Model):
Name_car_owner = models.ForeignKey(User, on_delete=models.CASCADE, verbose_name='Имя')
Name_car_brand = models.ForeignKey('brand', on_delete=models.PROTECT, verbose_name='Марка')
Сar_body_type = models.ForeignKey('body_type', on_delete=models.PROTECT, verbose_name='Тип кузова')
Сar_model = models.ForeignKey('model', on_delete=models.PROTECT, verbose_name='Модель')
Сar_years = models.DateField(verbose_name='Дата выпуска')
Car_state = models.ForeignKey('state', on_delete=models.PROTECT, verbose_name='Состояние', null=True)
transmission = models.ForeignKey('transmission', on_delete=models.PROTECT, verbose_name='Трансмиссия')
Car_contry = models.ForeignKey('contry', on_delete=models.PROTECT, verbose_name='Страна')
Car_city = models.ForeignKey('city', on_delete=models.PROTECT, verbose_name='Город')
Car_drive_unit = models.ForeignKey('drive_unit', on_delete=models.PROTECT, verbose_name='Привод')
Сar_description = models.TextField(max_length=1000, verbose_name='Описание')
Сar_engine = models.ForeignKey('engine', on_delete=models.PROTECT, verbose_name='Двигатель')
Сar_price = models.CharField(max_length=1000, verbose_name='Цена')
def __str__(self):
Car_ID = str(self.id)
return Car_ID
def get_absolute_url(self):
return reverse('lot', kwargs={'post_id': self.pk})
class Meta:
verbose_name = 'Машина'
verbose_name_plural = 'Машины'
ordering = ['id']
class photo_car(models.Model):
car_link = models.ForeignKey(Car, on_delete=models.CASCADE, verbose_name='Лот', related_name='images')
car_photo = models.ImageField(upload_to='photos/%Y/%m/%d/', verbose_name='Фото')
def __str__(self):
#car_link = int(self.car_link)
return self.car_link
class Meta:
verbose_name = 'Фото автомобиля'
verbose_name_plural = 'Фотографии машин'
ordering = ['id']
Вопрос: Как написать представление в views.py
чтобы обращаясь к модели Car
можно было подтянуть зависимости из photo_car
и потом с помощью шаблонизатора Jinja2 в шаблоне вывести одну машину и все ее фотки?
Источник: Stack Overflow на русском