📝 Django

Базы данных в Django

P
Автор
PyLand Team
📅
Опубликовано
30.06.2026
⏱️
Время чтения
1 мин
👁️
Просмотров
256
🌱
Уровень
Начальный

Охватываемые темы: Поддерживаемые СУБД, Настройка SQLite (по умолчанию), Настройка PostgreSQL, Через переменную окружения (рекомендуется).

Поддерживаемые СУБД

Django поддерживает несколько баз данных из коробки:

База данных Пакет Применение
SQLite встроен разработка
PostgreSQL psycopg2 продакшн
MySQL/MariaDB mysqlclient продакшн
Oracle cx_Oracle корпоратив

Настройка SQLite (по умолчанию)

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': BASE_DIR / 'db.sqlite3',
    }
}

Настройка PostgreSQL

pip install psycopg2-binary
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'mydb',
        'USER': 'myuser',
        'PASSWORD': 'mypassword',
        'HOST': 'localhost',
        'PORT': '5432',
    }
}

Через переменную окружения (рекомендуется)

pip install dj-database-url
import dj_database_url

DATABASES = {
    'default': dj_database_url.config(
        default='sqlite:///db.sqlite3',
        conn_max_age=600,
    )
}

.env:

DATABASE_URL=postgresql://user:pass@localhost/mydb

Несколько баз данных

DATABASES = {
    'default': {'ENGINE': 'django.db.backends.postgresql', ...},
    'analytics': {'ENGINE': 'django.db.backends.mysql', ...},
}
# Использование
Task.objects.using('analytics').all()

Почему PostgreSQL для продакшна

  • Полная поддержка транзакций
  • JSON поля (JSONField)
  • Полнотекстовый поиск
  • Надёжность и масштабирование

Ваша реакция на статью

💬 Комментарии (0)

🔐 Войдите в систему, чтобы оставить комментарий
🚪 Войти
💭

Комментариев пока нет

Станьте первым, кто поделится мнением об этой статье!

🔗 Похожие

Похожие статьи

Продолжите изучение с этими материалами

📝

Django ORM: шпаргалка

ORM (Object-Relational Mapping) позволяет работать с БД через Python-объекты без SQL.

📅 30.06.2026 👁️ 311
📝

Форматы дат в Django

Охватываемые темы: Поля дат в модели, Работа с датами в Python, Форматирование в шаблоне, Форматирование...

📅 30.06.2026 👁️ 328
📝

Поиск в Django

Поиск в Django можно начать с простых ORM-фильтров, а для ранжирования и полнотекстового поиска использовать...

📅 30.06.2026 👁️ 277
🎓 Продолжить обучение

В каких курсах используется этот материал

Перейдите к курсу, чтобы закрепить материал на практике.

Django RequestLab: от HTTP до безопасного продакшена Открыть программу курса