P
Pisych1 марта 2021 г. 21:35

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

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

class Products(models.Model):
    title=models.CharField(max_length=150,verbose_name='Наименование блюда')
    output=models.CharField(max_length=10,verbose_name='Выход')
    price=models.FloatField('Цена')
    created_at=models.DateTimeField('Дата создания',auto_now_add=True)
    is_published=models.BooleanField(default=True ,verbose_name='Показ')
    photos=models.ImageField(upload_to='photos/%Y/%m/%d/',blank=True)
    category=models.ForeignKey('Category',on_delete=models.PROTECT,null=True,verbose_name='Категория')
    def __str__(self):
        return self.title
    class Meta:
        verbose_name="Наименование"
        verbose_name_plural="Наименования"
        ordering=['category','title','price']
class Category(models.Model):
    title=models.CharField(max_length=100,db_index=True,verbose_name='Категория')
    photos = models.ImageField(upload_to='photos/%Y/%m/%d/', blank=True)
    def __str__(self):
        return self.title
    class Meta:
        verbose_name="Категория"
        verbose_name_plural="Категории"
        ordering = ['title']

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

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

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

Рекомендуем хостинг TIMEWEB
Рекомендуем хостинг TIMEWEB
Стабильный хостинг, на котором располагается социальная сеть EVILEG. Для проектов на Django рекомендуем VDS хостинг.
1
P
  • 3 марта 2021 г. 1:06
  • Ответ был помечен как решение.

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

<body>

{% for i in CatList %}
    <ul>
        <li><h3>{{i.title}}</h3></li>




{% for j in ProdList %}
<ul>
{% if i.pk == j.category_id %}

    <li>{{j.title}}</li>

{% endif %}
</ul>
{% endfor %}
</ul>
{% endfor %}

Комментарии

Только авторизованные пользователи могут публиковать комментарии.
Пожалуйста, авторизуйтесь или зарегистрируйтесь
Timeweb

Позвольте мне порекомендовать вам отличный хостинг, на котором расположен EVILEG.

В течение многих лет Timeweb доказывает свою стабильность.

Для проектов на Django рекомендую VDS хостинг

Посмотреть Хостинг
C

C++ - Тест 005. Структуры и Классы

  • Результат:75баллов,
  • Очки рейтинга2
АЕ

C++ - Тест 005. Структуры и Классы

  • Результат:25баллов,
  • Очки рейтинга-10
m

C++ - Тест 003. Условия и циклы

  • Результат:28баллов,
  • Очки рейтинга-10
Последние комментарии
AB

Qt/C++ - Урок 008. QDataWidgetMapper - Работа с базой данных через виджет

Понял сам так - происходит через setTable() "Sets the database table on which the model operates to tableName. Does not select data from the table, but fetches its field information", а затем че…
AB

Qt/C++ - Урок 008. QDataWidgetMapper - Работа с базой данных через виджет

Начал делать что-то похожее, но без sql. Не очень понимаю, что делает mapper->setCurrentModelIndex(model->index(row,0)); Вернее не понимаю вот что: откуда он берёт данные, кот…
ИВ

Qt/C++ - Урок 048. QThread - работа с потоками с помощью moveToThread

Не получается сделать connect, получаю гору ошибок. В чем может быть дело ?
ИВ

Qt/C++ - Урок 034. Echo Server на основе QTcpServer

Добрый день, разрешите вопрос: во всех примерах работы с QTcpServer его всегда создают в main.cpp, нет ли возможности корректно сохдать его в MainWindow.cpp ? Просто если перенести код…
D

Django - Урок 001. Развёртывание сайта на Django + PostgreSQL + Gunicorn + Nginx

А почему нельзя? Где можно об этом почитать? Киньте, пожалуйста, в меня ссылкой.
Сейчас обсуждают на форуме

Отправка картинки в DRF

Да я знаю ;-) используйте, пожалуйста, в следующий раз средства сайта. В данном случае сторонний сервис ни к месту.
  • BlinCT
  • 9 апреля 2021 г. 8:15

Работа с созданным обьектом qml через Qt.createComponent

Добрый день. И как это решает мою проблему?) Item{ id: root property var model property bool headers : false property string objectName property int iMaxWidthRow:…

Проект на cmake и QCharts

Кто-нибудь сталкивался с проблемой скроллинша чарта ? если допустим увеличить в ширину сам чарт, как скроолить весь чарт а не только его видимую часть ?

Ожидание ввода QLineEdit

Попробовал, крешится напрочь... Такое чуство что таймер не удаляется.... и к нему снова идет обращение....

QScrollArea dynamically add QCheckBoxes

Всё правильно. Это просто спамер, который отправился в вечный бан.
О нас
Услуги
© EVILEG 2015-2020
Рекомендует хостинг TIMEWEB