В этом разделе мы впервые используем базу данных для создания базового приложения с БД, где администратор может публиковать, а все зашедшие читать короткие сообщения.
Мы изучим мощный встроенный интерфейс админ-панели Django, которая добавляет визуальный способ внесения изменений в наши данные. А также попробуем добавить тесты.
Благодаря мощному ORM(Object Relational Mapper) в Django встроена поддержка множества баз данных: PostgreSQL, MySQL, MariaDB, Oracle и SQLite.
Это означает, что мы, разработчики, можем написать один и тот же код на Python в файле models.py, и он будет автоматически переведен в правильный SQL для каждой базы данных.
Для локальной разработки Django по умолчанию использует SQLite, потому что он основан на файлах и поэтому намного проще в использовании, чем другие варианты баз данных, которые требуют специального сервера, работающего отдельно от самого Django.
Создание проекта
Давайте создадим новый проект Django, я назову его Course_SecondProject, детально расписывать как создать проект я не буду, кто забыл, можете посмотреть в предыдущем разделе.
Установка нового приложения, давайте его назовем posts. Немного напомню вам как установить его:
python manage.py startapp posts
Далее не забываем добавить наше новое приложение posts в настройки Django, для этого в файле Course_SecondProject/settings.py добавим в INSTALLED_APPS наше приложение posts.apps.PostsConfig.
Затем выполните команду migrate для создания начальной базы данных на основе настроек Django по умолчанию.
python manage.py migrate
Если вы заглянете в наш каталог, вы увидите файл db.sqlite3, представляющий нашу базу данных SQLite:
Технически, файл db.sqlite3 создается при первом запуске migrate или runserver, однако migrate синхронизирует базу данных с текущим состоянием всех моделей баз данных, содержащихся в проекте и перечисленных в INSTALLED_APPS.
Другими словами, чтобы убедиться, что база данных отражает текущее состояние вашего проекта, вам нужно будет запускать migrate каждый раз, когда вы обновляете модель.
Чтобы убедиться, что все работает правильно, запустите наш локальный сервер:
python manage.py runserver
В своем веб-браузере перейдите по адресу http://127.0.0.1:8000/, чтобы увидеть знакомую страницу приветствия Django: