django.contrib.postgres
¶
PostgreSQL имеет ряд особенностей, которые не разделяются другими базами данных, поддерживаемыми Django. Этот дополнительный модуль содержит поля модели и поля формы для ряда специфических для PostgreSQL типов данных.
Примечание
Django был и будет оставаться веб-фреймворком, не зависящим от баз данных. Мы призываем тех, кто пишет многоразовые приложения для сообщества Django, писать код, не зависящий от базы данных, где это возможно. Однако мы понимаем, что реальные проекты, написанные с использованием Django, не обязательно должны быть привязаны к базе данных. На самом деле, как только проект достигает определенного размера, изменение базового хранилища данных уже является серьезной проблемой и, скорее всего, потребует изменения кодовой базы для обработки различий между хранилищами данных.
Django обеспечивает поддержку ряда типов данных, которые будут работать только с PostgreSQL. Нет никакой фундаментальной причины, почему (например) модуль contrib.mysql
не существует, кроме того, что PostgreSQL имеет самый богатый набор функций из поддерживаемых баз данных, поэтому его пользователи получают наибольшую выгоду.
- Функции агрегации, специфичные для PostgreSQL
- Ограничения базы данных, специфичные для PostgreSQL
- Выражения запросов, специфичные для PostgreSQL
- Поля модели, специфичные для PostgreSQL
- Поля и виджеты форм, специфичные для PostgreSQL
- Функции базы данных, специфичные для PostgreSQL
- Индексы моделей, специфичные для PostgreSQL
- Поиск в PostgreSQL
- Операции по миграции базы данных
- Создание расширения с помощью миграций
CreateExtension
BloomExtension
BtreeGinExtension
BtreeGistExtension
CITextExtension
CryptoExtension
HStoreExtension
TrigramExtension
UnaccentExtension
- Управление коллациями с помощью миграций
- Одновременные операции с индексами
- Добавление ограничений без принудительной валидации
- Полнотекстовый поиск
- Валидаторы