Задать вопрос
@gromyko21

Как правильно сделать каталог товаров Django?

Всем привет. Пишу сайт на Django и возник вопрос, как сделать правильно каталог товаров(если есть готовый скрипт, или пример - кидайте. Буду благодарен)?
Это не интернет магазин то есть функции корзины и покупки не нужны. Нужно загружать данные из админки(сначала новые reverse почему-то не работает так как я хочу) и автоматически создавать новую страницу, когда в админку загрузили 9 товаров.
Основной вопрос: как выгружать сначала новые данные и создавать новые страницы каталога при заполнении? Пример на фото.5ec8b38a19f44814843732.png
  • Вопрос задан
  • 1769 просмотров
Подписаться 3 Простой 1 комментарий
Пригласить эксперта
Ответы на вопрос 1
В файле view:
from django.shortcuts import render


def index(request):
    name_query = Post.objects.order_by('-pub_date')
    return render(request, 'shop/index.html', context={'data_name_query': name_query}


В файле index.html:
...
{% for some in data_name_query %}
    {{ some.title }}
{% empty %}
    <p>Нет данных для построения</p>
{% endfor %}
...


Пояснения:
  1. Обязательно убедитесь, что у вас подключен render в файле view
  2. name_query - вы вольны назвать, как вам удобно
  3. Post - это название класса в файле model.py, к которому идёт запрос
  4. order_by('-pub_date') - сортировка по полю "pub_date", а "-" сортирует в обратном порядке
  5. 'shop/index.html' - путь до вашего html файла
  6. context - данные, которые будут переданы в html файл (я указал название данных как data_name_query, вы вольны называть, как вам удобно)
  7. В файле index.html перебираем полученные данные из context. Переменную назвали "data_name_query", поэтому обращаемся в цикле к нему, вытаскиваем из него объект и присваиваем ему имя "some"
  8. {{ some.title }} - это обращение к определенному полю, которое вы указывали в model.py определённому классу
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы