دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش:
نویسندگان: Дронов В. А.
سری:
ISBN (شابک) : 9785977566919
ناشر: БХВ-Петербург
سال نشر: 2021
تعداد صفحات: 701
[705]
زبان: Russian
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود)
حجم فایل: 17 Mb
در صورت تبدیل فایل کتاب Django 3.0. Практика создания веб-сайтов на Python به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب جنگو 3.0. تمرین ایجاد وب سایت در پایتون نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
Оглавление Введение Что такое веб-фреймворк? Почему Django? Что нового в Django 3.0 и новой книге? Использованные программные продукты Типографские соглашения ЧАСТЬ I. ВВОДНЫЙ КУРС Глава 1. Основные понятия Django. Вывод данных 1.1. Установка фреймворка 1.2. Проект Django 1.3. Отладочный веб-сервер Django 1.4. Приложения 1.5. Контроллеры 1.6. Маршруты и маршрутизатор 1.7. Модели 1.8. Миграции 1.9. Консоль Django 1.10. Работа с моделями 1.11. Шаблоны 1.12. Контекст шаблона, рендеринг и сокращения 1.13. Административный веб-сайт Django 1.14. Параметры полей и моделей 1.15. Редактор модели Глава 2. Связи. Ввод данных. Статические файлы 2.1. Связи между моделями 2.2. Строковое представление модели 2.3. URL-параметры и параметризованные запросы 2.4. Обратное разрешение интернет-адресов 2.5. Формы, связанные с моделями 2.6. Контроллеры-классы 2.7. Наследование шаблонов 2.8. Статические файлы ЧАСТЬ II. БАЗОВЫЕ ИНСТРУМЕНТЫ DJANGO Глава 3. Создание и настройка проекта 3.1. Подготовка к работе 3.2. Создание проекта Django 3.3. Настройки проекта 3.3.1. Основные настройки 3.3.2. Параметры баз данных 3.3.3. Список зарегистрированных приложений 3.3.4. Список зарегистрированных посредников 3.3.5. Языковые настройки 3.4. Создание, настройка и регистрация приложений 3.4.1. Создание приложений 3.4.2. Настройка приложений 3.4.3. Регистрация приложения в проекте 3.5. Отладочный веб-сервер Django Глава 4. Модели: базовые инструменты 4.1. Объявление моделей 4.2. Объявление полей модели 4.2.1. Параметры, поддерживаемые полями всех типов 4.2.2. Классы полей моделей 4.2.3. Создание полей со списком 4.3. Создание связей между моделями 4.3.1. Связь ”один-со-многими" 4.3.2. Связь "один-с-одним” 4.3.3. Связь ”многие-со-многими” 4.4. Параметры самой модели 4.5. Интернет-адрес модели и его формирование 4.6. Методы модели 4.7. Валидация модели. Валидаторы 4.7.1. Стандартные валидаторы Django 4.7.2. Вывод собственных сообщений об ошибках 4.7.3. Написание своих валидаторов 4.7.4. Валидация модели Глава 5. Миграции 5.1. Генерирование миграций 5.2. Файлы миграций 5.3. Выполнение миграций 5.4. Слияние миграций 5.5. Вывод списка миграций 5.6. Отмена всех миграций Глава 6. Запись данных 6.1. Правка записей 6.2. Создание записей 6.3. Занесение значений в поля со списком 6.4. Метод savef) 6.5. Удаление записей 6.6. Обработка связанных записей 6.6.1. Обработка связи "один-со-многими" 6.6.2. Обработка связи ”один-с-одним" 6.6.3. Обработка связи "многие-со-многими" 6.7. Произвольное переупорядочивание записей 6.8. Массовые добавление, правка и удаление записей 6.9. Выполнение валидации модели Глава 7. Выборка данных 7.1. Извлечение значений из полей записи 7.1.1. Получение значений из полей со списком 7.2. Доступ к связанным записям 7.3. Выборка записей 7.3.1. Выборка всех записей 7.3.2. Извлечение одной записи 7.3.3. Получение числа записей в наборе 7.3.4. Поиск одной записи 7.3.5. Фильтрация записей 7.3.6. Написание условий фильтрации 7.3.7. Фильтрация по значениям полей связанных записей 7.3.8. Сравнение со значениями других полей 7.3.9. Сложные условия фильтрации 7.3.10. Выборка уникальных записей 7.3.11. Выборка указанного числа записей 7.4. Сортировка записей 7.5. Агрегатные вычисления 7.5.1. Вычисления по всем записям модели 7.5.2. Вычисления по группам записей 7.5.3. Агрегатные функции 7.6. Вычисляемые поля 7.6.1. Простейшие вычисляемые поля 7.6.2. Функции СУБД 7.6.3. Условные выражения СУБД 7.6.4. Вложенные запросы 7.7. Объединение наборов записей 7.8. Извлечение значений только из заданных полей Глава 8. Маршрутизация 8.1. Как работает маршрутизатор 8.1.1. Списки маршрутов уровня проекта и уровня приложения 8.2. Объявление маршрутов 8.3. Передача данных в контроллеры 8.4. Именованные маршруты 8.5. Имена приложений 8.6. Псевдонимы приложений 8.7. Указание шаблонных путей в виде регулярных выражений Глава 9. Контроллеры-функции 9.1. Введение в контроллеры-функции 9.2. Как пишутся контроллеры-функции 9.2.1. Контроллеры, выполняющие одну задачу 9.2.2. Контроллеры, выполняющие несколько задач 9.3. Формирование ответа 9.3.1. Низкоуровневые средства для формирования ответа 9.3.2. Формирование ответа на основе шаблона 9.3.3. Класс TemplateResponse: отложенный рендеринг шаблонов 9.4. Получение сведений о запросе 9.5. Перенаправление 9.6. Обратное разрешение интернет-адресов 9.7. Выдача сообщений об ошибках и обработка особых ситуаций 9.8. Специальные ответы 9.8.1. Потоковый ответ 9.8.2. Отправка файлов 9.8.3. Отправка данных в формате JSON 9.9. Сокращения Django 9.10. Программное разрешение интернет-адресов 9.11. Дополнительные настройки контроллеров Глава 10. Контроллеры-классы 10.1. Введение в контроллеры-классы 10.2. Базовые контроллеры-классы 10.2.1. Контроллер View: диспетчеризация по НТТР-методу 10.2.2. Примесь ContextMixin: создание контекста шаблона 10.2.3. Примесь TemplateResponseMixin: рендеринг шаблона 10.2.4. Контроллер TemplateView: все вместе 10.3. Классы, выводящие одну запись 10.3.1. Примесь SingleObject Mixin: поиск записи 10.3.2. Примесь SingleObjectTemplateResponseMixin: рендеринг шаблона на основе найденной записи 10.3.3. Контроллер DetailView: все вместе 10.4. Классы, выводящие наборы записей 10.4.1. Примесь MultipleObjectMixin: извлечение набора записей 10.4.2. Примесь MultipleObjectTemplateResponseMixin: рендеринг шаблона на основе набора записей 10.4.3. Контроллер ListView: все вместе 10.5. Классы, работающие с формами 10.5.1. Классы для вывода и валидации форм 10.5.1.1. Примесь FormMixin: создание формы 10.5.1.2. Контроллер ProcessFormView: вывод и обработка формы 10.5.1.3. Контроллер-класс FormView: создание, вывод и обработка формы 10.5.2. Классы для добавления, правки и удаления записей 10.5.2.1. Примесь ModelFormMixin: создание формы, связанной с моделью 10.5.2.2. Контроллер CreateView: создание новой записи 10.5.2.3. Контроллер UpdateView: исправление записи 10.5.2.4. Примесь DeletionMixin: удаление записи 10.5.2.5. Контроллер DeleteView: удаление записи с подтверждением 10.6. Классы для вывода хронологических списков 10.6.1. Вывод последних записей 10.6.1.1. Примесь DateMixirr. фильтрация записей по дате 10.6.1.2. Контроллер BaseDateListView'. базовый класс 10.6.1.3. Контроллер ArchivelndexView. вывод последних записей 10.6.2. Вывод записей по годам 10.6.2.1. Примесь YearMixirv. извлечение года 10.6.2.2. Контроллер Year Ar chiveView. вывод записей за год 10.6.3. Вывод записей по месяцам 10.6.3.1. Примесь MonthMixirr. извлечение месяца 10.6.3.2. Контроллер MonthArchiveView. вывод записей за месяц 10.6.4. Вывод записей по неделям 10.6.4.1. Примесь WeekMixin'. извлечение номера недели 10.6.4.2. Контроллер WeekAr chiveView'. вывод записей за неделю 10.6.5. Вывод записей по дням 10.6.5.1. Примесь Day Mix in'. извлечение заданного числа 10.6.5.2. Контроллер Day Ar chive View', вывод записей за день 10.6.6. Контроллер То day Ar chive View, вывод записей за текущее число 10.6.7. Контроллер Date Det ail View, вывод одной записи за указанное число 10.7. Контроллер Re direct View', перенаправление 10.8. Контроллеры-классы смешанной функциональности Глава 11. Шаблоны и статические файлы: базовые инструменты 11.1. Настройки проекта, касающиеся шаблонов 11.2. Вывод данных. Директивы 11.3. Теги шаблонизатора 11.4. Фильтры 11.5. Наследование шаблонов 11.6. Обработка статических файлов 11.6.1. Настройка подсистемы статических файлов 11.6.2. Обслуживание статических файлов 11.6.3. Формирование интернет-адресов статических файлов Глава 12. Пагинатор 12.1. Класс Paginator. сам пагинатор. Создание пагинатора 12.2. Класс Page\ часть пагинатора. Вывод пагинатора Глава 13. Формы, связанные с моделями 13.1. Создание форм, связанных с моделями 13.1.1. Создание форм с помощью фабрики классов 13.1.2. Создание форм путем быстрого объявления 13.1.3. Создание форм путем полного объявления 13.1.3.1. Как выполняется полное объявление 13.1.3.2. Параметры, поддерживаемые всеми типами полей 13.1.3.3. Классы полей форм 13.1.3.4. Классы полей форм, применяемые по умолчанию 13.1.4. Задание элементов управления 13.1.4.1. Классы элементов управления 13.1.4.2. Элементы управления, применяемые по умолчанию 13.2. Обработка форм 13.2.1. Добавление записи посредством формы 13.2.1.1. Создание формы для добавления записи 13.2.1.2. Повторное создание формы 13.2.1.3. Валидация данных, занесенных в форму 13.2.1.4. Сохранение данных, занесенных в форму 13.2.1.5. Доступ к данным, занесенным в форму 13.2.2. Правка записи посредством формы 13.2.3. Некоторые соображения касательно удаления записей 13.3. Вывод форм на экран 13.3.1. Быстрый вывод форм 13.3.2. Расширенный вывод форм 13.4. Валидация в формах 13.4.1. Валидация полей формы 13.4.1.1. Валидация с применением валидаторов 13.4.1.2. Валидация путем переопределения методов формы 13.4.2. Валидация формы Глава 14. Наборы форм, связанные с моделями 14.1. Создание наборов форм, связанных с моделями 14.2. Обработка наборов форм, связанных с моделями 14.2.1. Создание набора форм, связанного с моделью 14.2.2. Повторное создание набора форм 14.2.3. Валидация и сохранение набора форм 14.2.4. Доступ к данным, занесенным в набор форм 14.2.5. Реализация переупорядочивания записей 14.3. Вывод наборов форм на экран 14.3.1. Быстрый вывод наборов форм 14.3.2. Расширенный вывод наборов форм 14.4. Валидация в наборах форм 14.5. Встроенные наборы форм 14.5.1. Создание встроенных наборов форм 14.5.2. Обработка встроенных наборов форм Глава 15. Разграничение доступа: базовые инструменты 15.1. Как работает подсистема разграничения доступа 15.2. Подготовка подсистемы разграничения доступа 15.2.1. Настройка подсистемы разграничения доступа 15.2.2. Создание суперпользователя 15.2.3. Смена пароля пользователя 15.3. Работа со списками пользователей и групп 15.3.1. Список пользователей 15.3.2. Группы пользователей. Список групп 15.4. Аутентификация и служебные процедуры 15.4.1. Контроллер LoginView. вход на сайт 15.4.2. Контроллер Logout View'. выход с сайта 15.4.3. Контроллер Passwordchange View', смена пароля 15.4.4. Контроллер PasswordChangeDoneView'. уведомление об успешной смене пароля 15.4.5. Контроллер PasswordResetView. отправка письма для сброса пароля 15.4.6. Контроллер PasswordResetDoneView. уведомление об отправке письма для сброса пароля 15.4.7. Контроллер PasswordResetConfirmView\ собственно сброс пароля 15.4.8. Контроллер PasswordResetCompleteView\ уведомление об успешном сбросе пароля 15.5. Получение сведений о пользователях 15.5.1. Получение сведений о текущем пользователе 15.5.2. Получение пользователей, обладающих заданным правом 15.6. Авторизация 15.6.1. Авторизация в контроллерах 15.6.1.1. Авторизация в контроллерах-функциях: непосредственные проверки 15.6.1.2. Авторизация в контроллерах-функциях: применение декораторов 15.6.1.3. Авторизация в контроллерах-классах 15.6.2. Авторизация в шаблонах ЧАСТЬ III. РАСШИРЕННЫЕ ИНСТРУМЕНТЫ И ДОПОЛНИТЕЛЬНЫЕ БИБЛИОТЕКИ Глава 16. Модели: расширенные инструменты 16.1. Управление выборкой полей 16.2. Связи ”многие-со-многими" с дополнительными данными 16.3. Полиморфные связи 16.4. Наследование моделей 16.4.1. Прямое наследование моделей 16.4.2. Абстрактные модели 16.4.3. Прокси-модели 16.5. Создание своих диспетчеров записей 16.5.1. Создание диспетчеров записей 16.5.2. Создание диспетчеров обратной связи 16.6. Создание своих наборов записей 16.7. Управление транзакциями 16.7.1. Автоматическое управление транзакциями 16.7.1.1. Режим по умолчанию: каждая операция — в отдельной транзакции 16.7.1.2. Режим атомарных запросов 16.7.1.3. Режим по умолчанию на уровне контроллера 16.7.1.4. Режим атомарных запросов на уровне контроллера 16.7.2. Ручное управление транзакциями 16.7.3. Обработка подтверждения транзакции Глава 17. Формы и наборы форм: расширенные инструменты и дополнительная библиотека 17.1. Формы, не связанные с моделями 17.2. Наборы форм, не связанные с моделями 17.3. Расширенные средства для вывода форм и наборов форм 17.3.1. Указание CSS-стилей у форм 17.3.2. Настройка выводимых форм 17.3.3. Настройка наборов форм 17.4. Библиотека Django Simple Captcha: поддержка CAPTCHA 17.4.1. Установка Django Simple Captcha 17.4.2. Использование Django Simple Captcha 17.4.3. Настройка Django Simple Captcha 17.4.4. Дополнительные команды captcha clean и captcha create_pool 17.5. Дополнительные настройки проекта, имеющие отношение к формам Глава 18. Поддержка баз данных PostgreSQL и библиотека django-localflavor 18.1. Дополнительные инструменты для поддержки PostgreSQL 18.1.1. Объявление моделей для работы с PostgreSQL 18.1.1.1. Поля, специфические для PostgreSQL 18.1.1.2. Индексы PostgreSQL 18.1.1.3. Специфическое условие PostgreSQL 18.1.1.4. Расширения PostgreSQL 18.1.1.5. Валидаторы PostgreSQL 18.1.2. Запись и выборка данных в PostgreSQL 18.1.2.1. Запись и выборка значений полей в PostgreSQL 18.1.2.2. Фильтрация записей в PostgreSQL 18.1.3. Агрегатные функции PostgreSQL 18.1.4. Функции СУБД, специфичные для PostgreSQL 18.1.5. Полнотекстовая фильтрация PostgreSQL 18.1.5.1. Модификатор search 18.1.5.2. Функции СУБД для полнотекстовой фильтрации 18.1.5.3. Функции СУБД для фильтрации по похожим словам 18.1.6. Объявление форм для работы с PostgreSQL 18.1.6.1. Поля форм, специфические для PostgreSQL 18.1.6.2. Элементы управления, специфические для PostgreSQL 18.2. Библиотека django-localflavor: дополнительные поля для моделей и форм 18.2.1. Установка django-localflavor 18.2.2. Поля модели, предоставляемые django-localflavor 18.2.3. Поля формы, предоставляемые django-localflavor 18.2.4. Элементы управления, предоставляемые django-localflavor Глава 19. Шаблоны: расширенные инструменты и дополнительная библиотека 19.1. Библиотека django-precise-bbcode: поддержка BBCode 19.1.1. Установка django-precise-bbcode 19.1.2. Поддерживаемые BBCode-теги 19.1.3. Обработка BBCode 19.1.3.1. Обработка BBCode при выводе 19.1.3.2. Хранение BBCode в модели 19.1.4. Создание дополнительных BBCode-тегов 19.1.5. Создание графических смайликов 19.1.6. Настройка django-precise-bbcode 19.2. Библиотека django-bootstrap4: интеграция с Bootstrap 19.2.1. Установка django-bootstrap4 19.2.2. Использование django-bootstrap4 19.2.3. Настройка django-bootstrap4 19.3. Написание своих фильтров и тегов 19.3.1. Организация исходного кода 19.3.2. Написание фильтров 19.3.2.1. Написание и использование простейших фильтров 19.3.2.2. Управление заменой недопустимых знаков HTML 19.3.3. Написание тегов 19.3.3.1. Написание тегов, выводящих элементарные значения 19.3.3.2. Написание шаблонных тегов 19.3.4. Регистрация фильтров и тегов 19.4. Переопределение шаблонов Глава 20. Обработка выгруженных файлов 20.1. Подготовка подсистемы обработки выгруженных файлов 20.1.1. Настройка подсистемы обработки выгруженных файлов 20.1.2. Указание маршрута для выгруженных файлов 20.2. Хранение файлов в моделях 20.2.1. Типы полей модели, предназначенные для хранения файлов 20.2.2. Поля форм, валидаторы и элементы управления, служащие для указания файлов 20.2.3. Обработка выгруженных файлов 20.2.4. Вывод выгруженных файлов 20.2.5. Удаление выгруженного файла 20.3. Хранение путей к файлам в моделях 20.4. Низкоуровневые средства для сохранения выгруженных файлов 20.4.1. Класс UploadedFile'. выгруженный файл. Сохранение выгруженных файлов 20.4.2. Вывод выгруженных файлов низкоуровневыми средствами 20.5. Библиотека django-cleanup: автоматическое удаление ненужных файлов 20.6. Библиотека easy-thumbnails: вывод миниатюр 20.6.1. Установка easy-thumbnails 20.6.2. Настройка easy-thumbnails 20.6.2.1. Пресеты миниатюр 20.6.2.2. Остальные параметры библиотеки 20.6.3. Вывод миниатюр в шаблонах 20.6.4. Хранение миниатюр в моделях 20.6.5. Дополнительная команда thumbnail cleanup Глава 21. Разграничение доступа: расширенные инструменты и дополнительная библиотека 21.1. Настройки проекта, касающиеся разграничения доступа 21.2. Работа с пользователями 21.2.1. Создание пользователей 21.2.2. Работа с паролями 21.3. Аутентификация и выход с сайта 21.4. Валидация паролей 21.4.1. Стандартные валидаторы паролей 21.4.2. Написание своих валидаторов паролей 21.4.3. Выполнение валидации паролей 21.5. Библиотека Python Social Auth: регистрация и вход через социальные сети 21.5.1. Создание приложения ’’ВКонтакте” 21.5.2. Установка и настройка Python Social Auth 21.5.3. Использование Python Social Auth 21.6. Создание своей модели пользователя 21.7. Создание своих прав пользователя Глава 22. Посредники и обработчики контекста 22.1. Посредники 22.1.1. Стандартные посредники 22.1.2. Порядок выполнения посредников 22.1.3. Написание своих посредников 22.1.3.1. Посредники-функции 22.1.3.2. Посредники-классы 22.2. Обработчики контекста Глава 23. Cookie, сессии, всплывающие сообщения и подписывание данных 23.1. Cookie 23.2. Сессии 23.2.1. Настройка сессий 23.2.2. Использование сессий 23.2.3. Дополнительная команда clearsessions 23.3. Всплывающие сообщения 23.3.1. Настройка всплывающих сообщений 23.3.2. Уровни всплывающих сообщений 23.3.3. Создание всплывающих сообщений 23.3.4. Вывод всплывающих сообщений 23.3.5. Объявление своих уровней всплывающих сообщений 23.4. Подписывание данных Глава 24. Сигналы 24.1. Обработка сигналов 24.2. Встроенные сигналы Django 24.3. Объявление своих сигналов Глава 25. Отправка электронных писем 25.1. Настройка подсистемы отправки электронных писем 25.2. Низкоуровневые инструменты для отправки писем 25.2.1. Класс EmailMessage'. обычное электронное письмо 25.2.2. Формирование писем на основе шаблонов 25.2.3. Использование соединений. Массовая рассылка писем 25.2.4. Класс EmailMultiAlternatives'. составное письмо 25.3. Высокоуровневые инструменты для отправки писем 25.3.1. Отправка писем по произвольным адресам 25.3.2. Отправка писем зарегистрированным пользователям 25.3.3. Отправка писем администраторам и редакторам сайта 25.4. Отладочный SMTP-сервер Глава 26. Кэширование 26.1. Кэширование на стороне сервера 26.1.1. Подготовка подсистемы кэширования на стороне сервера 26.1.1.1. Настройка подсистемы кэширования на стороне сервера 26.1.1.2. Создание таблицы для хранения кэша 26.1.1.3. Применение Memcached 26.1.2. Высокоуровневые средства кэширования 26.1.2.1. Кэширование всего веб-сайта 26.1.2.2. Кэширование на уровне отдельных контроллеров 26.1.2.3. Управление кэшированием 26.1.3. Низкоуровневые средства кэширования 26.1.3.1. Кэширование фрагментов веб-страниц 26.1.3.2. Кэширование произвольных значений 26.2. Использование Redis 26.2.1. Установка django-redis и основные настройки кэша 26.2.2. Дополнительные инструменты кэширования, предоставляемые django-redis 26.2.3. Расширенные настройки django-redis 26.3. Кэширование на стороне клиента 26.3.1. Автоматическая обработка заголовков 26.3.2. Управление кэшированием в контроллерах 26.3.2.1. Условная обработка запросов 26.3.2.2. Прямое указание параметров кэширования 26.3.2.3. Запрет кэширования 26.3.3. Управление кэшированием в посредниках Глава 27. Административный веб-сайт Django 27.1. Подготовка административного веб-сайта к работе 27.2. Регистрация моделей на административном веб-сайте 27.3. Редакторы моделей 27.3.1. Параметры списка записей 27.3.1.1. Параметры списка записей: состав выводимого списка 27.3.1.2. Параметры списка записей: фильтрация и сортировка 27.3.1.3. Параметры списка записей: прочие 27.3.2. Параметры страниц добавления и правки записей 27.3.2.1. Параметры страниц добавления и правки записей: набор выводимых полей 27.3.2.2. Параметры страниц добавления и правки записей: элементы управления 27.3.2.3. Параметры страниц добавления и правки записей: прочие 27.3.3. Регистрация редакторов на административном веб-сайте 27.4. Встроенные редакторы 27.4.1. Объявление встроенного редактора 27.4.2. Параметры встроенного редактора 27.4.3. Регистрация встроенного редактора 27.5. Действия Глава 28. Разработка веб-служб REST. Библиотека Django REST framework 28.1. Установка и подготовка к работе Django REST framework 28.2. Введение в Django REST framework. Вывод данных 28.2.1. Сериализаторы 28.2.2. Веб-представление JSON 28.2.3. Вывод данных на стороне клиента 28.2.4. Первый принцип REST: идентификация ресурса по интернет-адресу 28.3. Ввод и правка данных 28.3.1. Второй принцип REST: идентификация действия по НТТР-методу 28.3.2. Парсеры веб-форм 28.4. Контроллеры-классы Django REST framework 28.4.1. Контроллер-класс низкого уровня 28.4.2. Контроллеры-классы высокого уровня: комбинированные и простые 28.5. Метаконтроллеры 28.6. Разграничение доступа в Django REST framework 28.6.1. Третий принцип REST: данные клиента хранятся на стороне клиента 28.6.2. Классы разграничения доступа Глава 29. Средства журналирования и отладки 29.1. Средства журналирования 29.1.1. Настройка подсистемы журналирования 29.1.2. Объект сообщения 29.1.3. Форматировщики 29.1.4. Фильтры 29.1.5. Обработчики 29.1.6. Регистраторы 29.1.7. Пример настройки подсистемы журналирования 29.2. Средства отладки 29.2.1. Веб-страница сообщения об ошибке 29.2.2. Отключение кэширования статических файлов Глава 30. Публикация веб-сайта 30.1. Подготовка веб-сайта к публикации 30.1.1. Написание шаблонов веб-страниц с сообщениями об ошибках 30.1.2. Указание настроек эксплуатационного режима 30.1.3. Удаление ненужных данных 30.1.4. Окончательная проверка веб-сайта 30.1.5. Настройка веб-сайта для работы по протоколу HTTPS 30.2. Публикация веб-сайта 30.2.1. Публикация посредством Uvicom 30.2.1.1. Подготовка веб-сайта к публикации посредством Uvicom 30.2.1.2. Запуск и остановка Uvicom 30.2.2. Публикация посредством Apache HTTP Server 30.2.2.1. Подготовка веб-сайта к публикации посредством Apache HTTP Server 30.2.2.2. Подготовка платформы для публикации посредством Apache HTTP Server 30.2.2.3. Конфигурирование веб-сайта для работы под Apache HTTP Server ЧАСТЬ IV. ПРАКТИЧЕСКОЕ ЗАНЯТИЕ: РАЗРАБОТКА ВЕБ-САЙТА Глава 31. Дизайн. Вспомогательные веб-страницы 31.1. План веб-сайта 31.2. Подготовка проекта и приложения main 31.2.1. Создание и настройка проекта 31.2.2. Создание и настройка приложения main 31.3. Базовый шаблон 31.4. Главная веб-с граница 31.5. Вспомогательные веб-страницы Глава 32. Работа с пользователями и разграничение доступа 32.1. Модель пользователя 32.2. Основные веб-страницы: входа, профиля и выхода 32.2.1. Веб-страница входа 32.2.2. Веб-страница пользовательского профиля 32.2.3. Веб-страница выхода 32.3. Веб-страницы правки личных данных пользователя 32.3.1. Веб-страница правки основных сведений 32.3.2. Веб-страница правки пароля 32.4. Веб-страницы регистрации и активации пользователей 32.4.1. Веб-страницы регистрации нового пользователя 32.4.1.1. Форма для занесения сведений о новом пользователе 32.4.1.2. Средства для регистрации пользователя 32.4.1.3. Средства для отправки писем с требованиями активации 32.4.2. Веб-страницы активации пользователя 32.5. Веб-страница удаления пользователя 32.6. Инструменты для администрирования пользователей Глава 33. Рубрики 33.1. Модели рубрик 33.1.1. Базовая модель рубрик 33.1.2. Модель надрубрик 33.1.3. Модель подрубрик 33.2. Инструменты для администрирования рубрик 33.3. Вывод списка рубрик в вертикальной панели навигации Глава 34. Объявления 34.1. Подготовка к обработке выгруженных файлов 34.2. Модели объявлений и дополнительных иллюстраций 34.2.1. Модель самих объявлений 34.2.2. Модель дополнительных иллюстраций 34.2.3. Реализация удаления объявлений в модели пользователя 34.3. Инструменты для администрирования объявлений 34.4. Вывод объявлений 34.4.1. Вывод списка объявлений 34.4.1.1. Форма поиска и контроллер списка объявлений 34.4.1.2. Реализация корректного возврата 34.4.1.3. Шаблон веб-страницы списка объявлений 34.4.2. Веб-страница сведений о выбранном объявлении 34.4.3. Вывод последних 10 объявлений на главной веб-странице 34.5. Работа с объявлениями 34.5.1. Вывод объявлений, оставленных текущим пользователем 34.5.2. Добавление, правка и удаление объявлений Глава 35. Комментарии 35.1. Подготовка к выводу CAPTCHA 35.2. Модель комментария 35.3. Вывод и добавление комментариев 35.4. Отправка уведомлений о новых комментариях Глава 36. Веб-служба REST 36.1. Веб-служба 36.1.1. Подготовка к разработке веб-службы 36.1.2. Список объявлений 36.1.3. Сведения о выбранном объявлении 36.1.4. Вывод и добавление комментариев 36.2. Тестовый фронтенд 36.2.1. Введение в Angular 36.2.2. Подготовка к разработке фронтенда 36.2.3. Метамодуль приложения AppModule. Маршрутизация в Angular 36.2.4. Компонент приложения AppComponent 36.2.5. Служба BbService. Внедрение зависимостей. Объекты-обещания 36.2.6. Компонент списка объявлений BbListComponent. Директивы. Фильтры. Связывание данных 36.2.7. Компонент сведений об объявлении BbDetailComponent. Двустороннее связывание данных Заключение Приложение. Описание электронного архива Предметный указатель