Django

Уроки Python Django / Создание сайта

12 уроков 22 задания Справочник Компилятор

Урок #8 - Создание шаблона для новостей

Урок #8 - Создание шаблона для новостей


PythonBootstrap

В этом уроке мы закончим работу над страницей новостей на сайте. Мы создадим шаблон, который будет получать данные из Python и выводить их через цикл в HTML-шаблоне.

Видео урок:

Для отображения HTML-шаблонов можно использовать не только файл views.py, но также можно обойтись без него и использовать такие методы, как: ListView или же DetailView. Первый служит для передачи большого количества информации или другими словами списка данных. Это могут быть статьи или же другой набор информации, который состоит не из одного объекта. Второй служит для отображения лишь одного объекта из базы данных. О нем мы поговорим еще в следующих уроках, поэтому особого акцента на нем сейчас ставить не будем.

В ListView мы указываем запрос к базе данных, в котором говорим что необходимо вывести, по какому критерию сортировать, какое максимальное количество элементов необходимо вывести и еще много других параметров.

К примеру, если мы хотим добавить некую дополнительную проверку в SQL запрос, то вместо команды all() необходимо прописать некий фильтр:
urlpatterns = [
    url(
        r'^$', 
        ListView.as_view(queryset = Articles.objects.filter(id = 2).order_by("-date")[:20], 
        template_name="news/posts.html")
    )
]
В примере выше будет показа лишь одна запись, у которой id равен двум. Такие же проверки можно проводить над другими полями в таблице.

Для вывода полученных данных необходимо всегда использовать цикл, так как элементов может быть несколько. В качестве переменной в цикле нужно устанавливать object_list.

Материалы для курса

django-news-category.zip Необходима подписка!

Чтобы скачивать материалы к видеокурсам необходимо оформить подписку на сайт

Исходный код

Весь код будет доступен после подписки на проект!

Онлайн редактор кода

Загрузка...

Задание к уроку

Необходимо оформить подписку на проект, чтобы получить доступ ко всем домашним заданиям!

Большое задание по курсу

Вам необходимо оформить подписку на сайте, чтобы получить большое задание. Такие задания есть к каждому курсу. В них входит задание, методика решения, а также "Готовое решение".
PS: подобные задания доступны при подписке от 1 месяца!


PythonBootstrap

Также стоит посмотреть