Django. Разработка веб-приложений на Python
На основе простой и надежной платформы Django на Python можно создавать мощные веб-решения всего из нескольких строк кода. Авторы, опытные разработчики, описывают все приемы, инструменты и концепции, которые необходимо знать, чтобы оптимально использовать Django 1.0, включая все основные особенности новой версии. Это полное руководство начинается с введения в Python, затем подробно обсуждаются основные компоненты Django (модели, представления и шаблоны) и порядок организации взаимодействия между ними. Описываются методы разработки конкретных приложений: блог, фотогалерея, система управления содержимым, инструмент публикации фрагментов кода с подсветкой синтаксиса. После этого рассматриваются более сложные темы: расширение системы шаблонов, синдицирование, настройка приложения администрирования и тестирование веб-приложений. Содержание "Django. Разработка веб-приложений на Python"
1. Практическое введение в Python для Django
Практические приемы владения Python и Django
Введение: интерактивный интерпретатор языка Python Основы Python
Переменные и присваивание значений
Стандартные типы данных в языке Python
Логические значения объектов
Встроенные и фабричные функции для работы с числами
Последовательности и итерируемые объекты
Встроенные и фабричные функции последовательностей
В заключение о стандартных типах данных
Управление потоком выполнения
Возбуждение исключений с помощью инструкции raise Файлы
Объявление и вызов функций
Функции г это обычные объекты
Поиск и соответствие
Кортежи с единственным элементом
Конструктор и метод инициализации
Стиль оформления программного кода (PEP 8 и не только)
Отступы в четыре пробела
Используйте пробелы, но не символы табуляции
Не записывайте короткие блоки программного кода
в одной строке с заголовком инструкции
Создавайте строки документирования
2. Django для нетерпеливых: создание блога
Запуск сервера разработки
Создание приложения блога
Настройка базы данных
Использование сервера баз данных
Настройка автоматизированного приложения
Опробование приложения администрирования
Создание общедоступного раздела приложения блога
Создание функции представления
Создание шаблона адреса URL
Упорядочение по дате
Форматирование даты и времени с помощью фильтра
Основы динамических веб-сайтов
Взаимодействие: HTTP, URL, запросы, ответы
Хранилища данных: SQL и реляционные базы данных
Представление: шаблоны отображения в разметку HTML и в другие форматы
Сложим все вместе
Понимание моделей, представлений и шаблонов
Выделение уровней (МУС)
Общий обзор архитектуры Django
Основные принципы Django
Django стремится быть Питонической
Не повторяйся (Don't Repeat Yourself, DRY)
Слабая зависимость и гибкость
II. Подробно о Django
4. Определение и использование моделей
Богатый набор типов полей в Django
Отношения между моделями
Вложенный класс Meta
Регистрация в приложении администрирования и дополнительные параметры
Создание и изменение базы данных с помощью утилиты manage.ру
Использование возможностей SQL, не предоставляемых платформой Django
5. Адреса URL, механизмы HTTP и представления
Введение в URLconf
Замещение кортежей функциями url
Использование нескольких объектов patterns
Включение других файлов URLconf с помощью функции include
Объекты функций и строки с именами функций
Моделирование HTTP: запросы, ответы и промежуточная обработка
Просто функции на языке Python
6. Шаблоны и обработка форм
Синтаксис языка шаблоно
Проверка и очистка
III. Приложения Django в примерах
Подготовка к выгрузке файлов
Проверка поля ImageField
Создание нашего собственного поля файла
Добавление атрибутов в поле
Применение принципа «не повторяйся» к адресам URL
Схема адресов элементов Item приложения
Соединяем все это с шаблонами
8. Система управления содержимым
Что такое система управления содержимым
Альтернатива системе управления содержимым: Flatpages
Включение приложения Flatpages
За рамками Flatpage: простая система
Управление доступностью статей для просмотра
Работа с форматом Markdown
Шаблоны адресов URL в urls.py
Представления административного раздела
Отображение содержимого с помощью универсальных представлений
Добавление функции поиска
Поддержка производственного процесса
В чем состоит польза Ajax
Выбор библиотеки Ajax
Структура каталогов приложения
Внедрение технологии Ajax
Символ «X» в аббревиатуре Ajax (или XML и JSON)
Установка библиотеки JavaScript
Настройка и тестирование библиотеки jQuery
Создание функции представления
Использование функции представления в JavaScript
Определение адресов URL
Ограничение числа записей в списке последних поступлений
Удаление устаревших записей с помощью задания сгоп
IV. Дополнительные возможности и особенности Django
11. Передовые приемы программирования в Django
Настройка приложения администрирования
Изменение расположения и стилей элементов с помощью параметра f ieldsets
Расширение базовых шаблонов
Добавление новых представлений
Определение адреса URL ленты
Дополнительные возможности работы с лентами
Создание загружаемых файлов
Конфигурационные файлы Nagios
Значения, разделенные запятыми (CSV)
Вывод диаграмм и графиков с помощью библиотеки PyCha
Расширение механизма ORM с помощью собственных подклассов Manager
Изменение множества объектов, возвращаемых по умолчанию
Добавление новых методов в подклассы Manager
Расширение системы шаблонов
Простые специализированные теги шаблонов
Более сложные специализированные теги шаблонов
Альтернативные системы шаблонов
12. Передовые приемы развертывания Django
Создание вспомогательных сценариев
Задания сгоп, выполняющие очистку
Изменение программного кода самой платформы Django
Типичный пример кэширования
Типы механизмов кэширования
Тестирование приложений на платформе Django
Основы модульного тестирования
Тестирование всего веб-приложения в целом
Тестирование программного кода самой платформы Django
A. Основы командной строки
Ввод «команды» в «командную строку»
Ключи и аргументы
Каналы и перенаправление
B. Установка и запуск Django
Обновление путей поиска
Версия в разработке
Встроенный сервер: не для работы в нормальном режиме эксплуатации
Стандартный подход: Apache и mod_python
Гибкая альтернатива: WSGI
Другой подход: flup и FastCGI
База данных SQL
Прочие базы данных
C. Инструменты разработки для платформы Django
Централизованное управление версиями
Децентрализованное управление версиями
Управление версиями в вашем проекте
Программное обеспечение управления проектами
D. Поиск, оценка и использование приложений на платформе Django
Где искать приложения
Как оценивать приложения
Как пользоваться приложениями
Передача собственных приложений
E. Django и Google Арр Engine
Назначение платформы Арр Engine
Приложения, опирающиеся исключительно на использование Арр Engine
Ограничения платформы Арр Engine
Проект Google Арр Engine Helper для Django
Получение SDK и Helper
Подробнее о Helper
Интегрирование Арр Engine
Копирование программного кода Арр Engine в проект
Интегрирование Арр Engine Helper
Перенос приложения на платформу Арр Engine
Создание нового приложения на платформе
Django, использующего возможности Арр Engine
Ресурсы в Интернете
F. Участие в проекте Django
Авторы раскрывают разработчику секреты Django, давая подробные разъяснения и предоставляя большое количество примеров программного кода, сопровождая их построчным описанием и иллюстрациями.