P
2 марта 2021 г. 8:35

Вывод данных из связанных таблиц.

Вот две простые таблицы.

  1. class Products(models.Model):
  2. title=models.CharField(max_length=150,verbose_name='Наименование блюда')
  3. output=models.CharField(max_length=10,verbose_name='Выход')
  4. price=models.FloatField('Цена')
  5. created_at=models.DateTimeField('Дата создания',auto_now_add=True)
  6. is_published=models.BooleanField(default=True ,verbose_name='Показ')
  7. photos=models.ImageField(upload_to='photos/%Y/%m/%d/',blank=True)
  8. category=models.ForeignKey('Category',on_delete=models.PROTECT,null=True,verbose_name='Категория')
  9. def __str__(self):
  10. return self.title
  11. class Meta:
  12. verbose_name="Наименование"
  13. verbose_name_plural="Наименования"
  14. ordering=['category','title','price']
  15. class Category(models.Model):
  16. title=models.CharField(max_length=100,db_index=True,verbose_name='Категория')
  17. photos = models.ImageField(upload_to='photos/%Y/%m/%d/', blank=True)
  18. def __str__(self):
  19. return self.title
  20. class Meta:
  21. verbose_name="Категория"
  22. verbose_name_plural="Категории"
  23. ordering = ['title']

Хочу получить примерно так:

Первые блюда
Борщ
Суп
Еще какое то блюдо
Вторые блюда:
Котлеты
Еще что-то….

Я там во вью написал цикл. Выводит на печать в консоль. Выводит правильно. А как в шаблоне то сделать?
Мне не важно, как выводить, списком или таблицей... Важно именно такой вид: Категория, наименование в этой категории и т.д.

1

Вам это нравится? Поделитесь в социальных сетях!

1
P
  • 3 марта 2021 г. 12:06
  • Ответ был помечен как решение.

Не знаю, правильно ли... Но работает

  1. <body>
  2.  
  3. {% for i in CatList %}
  4. <ul>
  5. <li><h3>{{i.title}}</h3></li>
  6.  
  7.  
  8.  
  9.  
  10. {% for j in ProdList %}
  11. <ul>
  12. {% if i.pk == j.category_id %}
  13.  
  14. <li>{{j.title}}</li>
  15.  
  16. {% endif %}
  17. </ul>
  18. {% endfor %}
  19. </ul>
  20. {% endfor %}

    Комментарии

    Только авторизованные пользователи могут публиковать комментарии.
    Пожалуйста, авторизуйтесь или зарегистрируйтесь
    • Последние комментарии
    • IscanderChe
      12 апреля 2025 г. 17:12
      Добрый день. Спасибо Вам за этот проект и отдельно за ответы на форуме, которые мне очень помогли в некоммерческих пет-проектах. Профессиональным программистом я так и не стал, но узнал мно…
    • AK
      1 апреля 2025 г. 11:41
      Добрый день. В данный момент работаю над проектом, где необходимо выводить звук из программы в определенное аудиоустройство (колонки, наушники, виртуальный кабель и т.д). Пишу на Qt5.12.12 поско…
    • Evgenii Legotckoi
      9 марта 2025 г. 21:02
      К сожалению, я этого подсказать не могу, поскольку у меня нет необходимости в обходе блокировок и т.д. Поэтому я и не задавался решением этой проблемы. Ну выглядит так, что вам действитель…
    • VP
      9 марта 2025 г. 16:14
      Здравствуйте! Я устанавливал Qt6 из исходников а также Qt Creator по отдельности. Все компоненты, связанные с разработкой для Android, установлены. Кроме одного... Когда пытаюсь скомпилиров…
    • ИМ
      22 ноября 2024 г. 21:51
      Добрый вечер Евгений! Я сделал себе авторизацию аналогичную вашей, все работает, кроме возврата к предидущей странице. Редеректит всегда на главную, хотя в логах сервера вижу запросы на правильн…