将postgresql架构传递给alembic迁移

时间:2018-05-22 12:37:46

标签: postgresql sqlalchemy alembic

我有一个postgresql数据库,我想在DSN中传递postgresql模式名称,如下所示:postgresql://login:password@postgreshost/dbname?schema=my_schema。我知道我可以在迁移操作中指定schema关键字,例如op.create_table。不幸的是,upgrade()downgrade()函数没有参数可以传递postgres模式。有没有办法在没有硬编码的情况下将模式名称传递给op.create_table()

1 个答案:

答案 0 :(得分:1)

如果始终是默认架构,您可以更改Postgres用户的schema search path

alter user the_user set search_path = my_schema;

这将使所有使用非限定标识符的语句都使用my_schema作为默认值。