К основному содержимому
whalio
▶

Видео этого урока скоро появится

Конспект урока доступен ниже

Урок 3 из 816 мин

База данных: схема, которая переживёт рост

Спроектируешь схему данных под свой продукт: пользователи, их объекты, связи между ними. Поднимешь базу, опишешь модели через ORM и прогонишь первые миграции. Научишься просить агента менять схему безопасно, без потери данных.

Конспект урока

  1. 1

    Сущности словами до кода

    Перечисли объекты и связи: пользователь, его проекты, записи внутри проекта. Проговори каждую связь вслух: один ко многим или многие ко многим.

  2. 2

    Схема как источник правды

    Опиши модели в файле схемы ORM с типами и обязательностью полей. Всё остальное, включая типы в коде, порождается из неё, а не пишется руками.

  3. 3

    Только миграции, никаких правок руками

    Каждое изменение схемы проходит миграцией: она воспроизводима, попадает в репозиторий и применяется на боевой базе тем же способом.

  4. 4

    Безопасное переименование в два шага

    Удаление и переименование колонки делай в два шага: сначала добавили новое поле и перенесли данные, потом убрали старое. Одношаговая правка на живой базе теряет данные без предупреждения.

  5. 5

    Индексы и уникальность

    Уникальность на почте, индексы на полях, по которым идёт поиск и фильтрация. Заложить сейчас дешевле, чем ловить тормоза на первой тысяче записей.

  6. 6

    Скрипт тестовых данных

    Заведи скрипт, который наполняет базу примерами. Без него каждый новый экран приходится оценивать на пустоте и все ошибки вёрстки вылезают уже у пользователей.

Практика

Опиши схему из трёх связанных таблиц, прогони миграцию и наполни базу скриптом тестовых данных. Выведи список объектов вместе с их владельцем и убедись, что связи работают.

Сделал? Отметь урок пройденным и переходи дальше