ZANIN блог
Контакты
Крути вниз
Фильтр по:
//Post title

Разработка сайта на Django - урок 04

04 Авг 2020Категория : Django

Разработка сайта на Django - урок 04

В предыдущем уроке мы создали модели для слайдера. Теперь добавим их в админку сайта и создадим пару слайдов, чтобы вывести их в шаблон. Для добавления нашей модели в админку необходимо перейти в файл admin.py нашего приложения main и импортировать в него нашу модель.

 

Django templatetags

Атрибут list_display определяет то, какие поля будут выводиться в списке.

 

Django list_display

 

Про другие атрибуты лучше описать дальше, при их добавлении.

Теперь создадим templatetags - это тег шаблонизатора Django, который вставляет какие-либо данные в то место, где он находится.

Для создания шаблонного тега необходимо:

  • Создать папку templatetags в нашем приложении main
  • Создать в ней 2 файла: __init__.py и slider_tags.py
  • Создать шаблон слайдера

Django templatetags

 

В файле slider_tags.py делаем следующее:

  • Импортируем нашу модель слайдера;
  • Создаем экземпляр класса Library из модуля template;
  • Вызываем у нашего экземпляра класса метод inclusion_tag;
  • Вызов оформляем в виде декоратора функции, реализующей наш тег;
  • Нашу функцию называем так, как потом будем выводить в шаблон.

Django inclusion_tag

 

Далее в шаблон слайдера выводим данные из контекста, который передали в шаблон (slider_block)

Django шаблон слайдера

После этого добавляем в шаблон главной страницы наш тег слайдера: файл slider_tags.py - загружаем в начале шаблона:

{% load slider_tags %}

А потом вставляем сам тег в то место, где хотим, чтобы отображался наш слайдер:

{% block_slider %}

Django вывод своего тега в шаблон

Получаем результат (если в админке добавили данные для слайдера.

Django вывод своего тега в шаблон

Django вывод своего тега в шаблон

Чтобы переименовать название нашего приложения в админке

Django название приложения в админке

Необходимо добавить строчку в apps.py нашего приложения main

Django verbose_name в apps.py

Но переименование приложения будет работать только, если вы в файле settings.py подключили приложение таким способом:

Django verbose_name в apps.py

Если вы подключите приложение таким образом

Django verbose_name в apps.py

То приложение будет работать, но некоторые настройки из app.py не подгрузятся, в том числе возможность переименовать приложение в админке.

  • 687

01. Об авторе

Александр Занин

Занимаюсь разработкой на Django,
а также бэкенд разработкой на PHP (Laravel, Slim).

Find on :

02. Свежие статьи

Готовы заказать проект?

© ZANIN 2019 / All rights reserved.
Контакты
Close