Недавно я внес некоторые изменения в свои модели в своем проекте Flask. Я попытался применить эти изменения к моей БД Postgres, но скрипт, похоже, не имеет никакого эффекта. Когда я запускаю обновление, он говорит
INFO [alembic.runtime.migration] Context impl SQLiteImpl.
INFO [alembic.runtime.migration] Will assume non-transactional DDL.
INFO [alembic.runtime.migration] Running upgrade -> ba60ca569e9f, empty message
А в БД ничего не меняется. Я удалил базу данных и воссоздал ее, и все равно ничего не произошло. Что происходит не так?
1 ответ
Context impl SQLiteImpl.
— сильный намек. Мой URI БД определяется SQLALCHEMY_DATABASE_URI = os.environ.get('DATABASE_URI') or 'sqlite:///'
. Когда я запускал свой проект в своей среде создания Docker, он работал, потому что DATABASE_URI
правильно устанавливался в Dockerfile. Когда я запускал его в своей локальной среде, он не работал. Я мог бы запустить его на своем серверном контейнере, и он должен был бы работать.
Я исправил это, правильно установив для моего DATABASE_URI значение export DATABASE_URI=postgres://{USERNAME}:{PASSWORD}@127.0.0.1:5432/debateit
. Это позволило моей локальной среде подключаться к базе данных Postgres, а не к локальному SQLite.
Похожие вопросы
Новые вопросы
postgresql
PostgreSQL — это система управления реляционными базами данных (RDBMS) с открытым исходным кодом, доступная для всех основных платформ, включая Linux, UNIX, Windows и OS X. Задавая вопросы, указывайте свою версию Postgres. Обратитесь к dba.stackexchange.com для вопросов, касающихся администрирования или дополнительных функций.