Django 4 для начинающих и Продвинутый Django 4 для продолжающих [Stepik] [Илья Перминов]

Bot

Администратор
Команда форума
23 Янв 2020
146,077
897
113
Данный курс является продолжением курса «Django 4 для начинающих», в нём более углублённо рассматривается вопросы разработки веб-приложений Django 4 и специальные связанные с этим темы.
Раздел 1. «Основы GIT»

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

Раздел 2. «Django ORM на основе проекта»

Данный раздел объяснит работу Django ORM, объявление модели, запросы (менеджер, набор запросов), поддержку нескольких драйверов, написание пользовательских запросов, миграции и т. д. В нем будут рассмотрены связи один-к-одному, один-ко-многим и многие-ко-многим, методы возвращающие QuerySet и не возвращающие, и поисковые поля. Так-же в данном разделе будет рассмотрены агрегатные функции и их группировка, Q-объекты и F-объекты, Мета-классы, абстрактные модели и пользовательские менеджеры моделей.

Раздел 3. «Индексы баз данных»

В этом разделе мы рассмотрим индексы в базе данных PostgreSQL, которые можно использовать для оптимизации наших запросов.

Раздел 4. «Разработка через тестирование»

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

Раздел 5. «Разрешения в Django»

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

Раздел 6. «HTMX на основе CRUD проекта»

В данном разделе, на примере, рассматривается использование библиотеки HTMX в CRUD проекте, для динамического изменения контента страницы, без её перезагрузки. Данная библиотека даст нам простой способ использования AJAX(Asynchronous Javascript and XML) для взаимодействия с сервером.

Раздел 7. «Интернационализация и локализация в Django»

Этот раздел познакомит с основами интернационализации и локализации проектов Django. В нём рассказывается как отмечать строковые литералы исходного кода и шаблонов для перевода, как генерировать и компилировать файлы переводов. Так-же будет рассмотрен процесс установки и использования приложения Rosetta в свой проект, чтобы управлять переводами через его веб-интерфейс. Кроме этого будет рассмотрен процесс локализации шаблонов URL-адресов, и будет рассмотрен селектор языка, позволяющий пользователям переключать язык сайта.

Раздел 8. «Создание чата на Django с использованием Сhannels и WebSocket»

В этом разделе рассматривается использование Django Сhannels и WebSocket на примере приложения чата.

Раздел 9. «Асинхронные задачи в Django + Сelery + Redis»

Данный раздел познакомит с Celery и объяснит, зачем и как использовать Celery для запуска асинхронной задачи.

Раздел 10. «Инфраструктура кеширования в Django»

Этот раздел посвящён вопросам кеширования в Django, в нём будут рассмотрены различные виды и уровни кеша. На примере будет рассмотрено настройка и использование кеш-сервера Memcached, и различные варианты кэширования. Так-же будет рассмотрена проверка запросов к кешу с помощью Django Debug Toolbar.

Раздел 11. «Дополнительно»

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