Alembic - Как делать Миграции Базы Данных на Python #13
Vložit
- čas přidán 2. 06. 2024
- Сегодня взглянем на Алембик - самый популярный инструмент для миграции базы данных в связке с SQLAlchemy.
Освой backend разработку на Python с НУЛЯ до выхода в продакшн за 3 месяца: clck.ru/35mSun
🚨 Продажи открыты только до 31 мая 2024 года! 🚨
Прочитать отзывы к курсу можно на Stepik: clck.ru/38ZdhZ
Все вопросы по SQLAlchemy обсуждаем в телеграм сообществе: t.me/python_community_rus
Мой телеграм канал о жизни разработчика: t.me/artemshumeiko
Полезные материалы для бэкендера в моем телеграм боте: t.me/ArtemShumeikoBot?start=eXQ
Репозиторий на Github с кодом из видео: t.me/artemshumeiko/28
Поддержать меня и получить ранний доступ к видео можно здесь: boosty.to/artemshumeiko
0:00 - Создание папки миграций
1:13 - Конфигурация Alembic
4:47 - Создание миграции
8:11 - Создание второй миграции
12:45 - Форматирование файлов миграций
Освой backend разработку на FastAPI с НУЛЯ до выхода в продакшн за 3 месяца: clck.ru/35mSun
🚨 Продажи открыты только до 31 мая 2024 года! 🚨
Прочитать отзывы к курсу можно на Stepik: clck.ru/38ZdhZ
Присоединяйся к Python сообществу, чтобы задавать свои вопросы и помогать другим: t.me/python_community_rus
Мой телеграм канал о жизни разработчика: t.me/artemshumeiko
Нужно видео по накатыванию эластика и кликхаус
Поддерживаю! Было бы круто на это посмотреть)
ELK очень актуально
лучший курс по алхимии который я когда либо видел, чувствую как буду пересматривать его ни один раз
Спасибо! Очень крутой и полезный курс!!!
Спасибо за ваш труд! Было бы неплохо если бы вы записали видео про permissions и role. Как лучше всего можно реализовать привязку permission к эндпоинту и создание любого role со связью one to many с permission.
Отличный курс, фундамент заложен, осталось практиковаться и читать документацию.
Рад, что курс был полезен, спасибо за отзыв!
спасибо! кода из этого урока не хватает на гитхабе
Спасибо за видео. Почему-то во всех видосах звук тихий
Было бы здорово добавить еще один урок по работе с тестовой базой данных для написания тестов в рамках того же FastAPI. По вопросам: как сконфигурировать conftest, нужно ли подымать тестовую БД в docker-compose или использовать что-то типа pytest-postgresql, как откатывать базу между отдельными тестами в рамках одной сессии.
Привет, тоже задаюсь вопросом о том, как тестировать созданную бд. Вам удалось что-то по этому поводу дельное найти?
Последние 2 урока запутали окончательно. Я так понимаю бесплатные уроки были заманухой для покупки платных. Сколько не пересматривал не смог воткнуть как же у нас загружается сам собой ASGI. Так же хотел бы узнать тонкости создания новой ДБ для алембика. Есть ли какие то хинты для ее создания? Я так понимаю нужно править файл .env где прописаны изначально DB_name и прочее или не так? До последних двух уроков все перепечатывал ручками. И вроде все работало как нужно. Но дальше не понял что и откуда берется и клонировал с гита. Танцы с бубном не сработали... З.Ы. да, работал через пайчарм. Может быть в этом кроется магия?
Базу - создать вручную в postgre, async - был разговор. Разница небольшая, потыкать самостоятельно и все станет ясно. Все ок. Через самостоятельные изыскания мы получаем настоящие знания. Я считаю что этот прекрасный обзорный курс. У автора нет платного курса по алхимии. Все ее изыски рассматривать - это в разы больше работы и уроков от автора. Имейте совесть.
🔥🔥🔥
Это последнее видео этого курса?
Да
немного не ясно зачем мы импортирвали объект воркера, но не имортировали объект резюме. Почему нельзя импортировать только base если в ней все хранится, или алембик но связям увидит еще табличку с резюме?
Нам нужно что-то из файла импортировать, чтобы алембик увидел все модели внутри файла
Алембик сам их не найдет)
@@artemshumeiko звучит как костыль. А если модели в одном в файле с base например, это не требуется ?
@@artemshumeikoпросто проекты с алембиком которые видел в миграции прописывали только base, да и все таблички можно создать в алхимии с помощью core обратившись к соответствующему атрибуту только Base. Много что не понятно (
При условии, что все модели лежат в 1 месте `models`, можно сделать пакет.
И уже из пакета после инициализации выводить Base.
```from .user import User
from .resumes import Resumes
from .base import Base```
Тогда метаданные в Base буду актуальны и алембик их подхватит @@user-rq5gg2uk3s
@@artemshumeiko А нельзя импортировать Base не из database, а из models? Я попробовал, работает