python - 如何在alembic初始化期间使用自定义模板

标签 python sqlalchemy alembic

根据文档,alembic 的模板可以指定为 alembic init --template pylons ./scripts。但 alembic 仅在其根目录中的一个文件夹 (python_path/lib/python2.7/site-packages/alembic/templates) 中搜索模板。

有什么方法可以运行自定义模板吗?问题的想法 - 项目设置的自动化,例如避免任何手工更改(例如编辑 env.py 文件)。

最佳答案

正如我在 Alembic 源代码中看到的那样,无法自定义模板目录位置。模板目录通过 Config.get_template_directory() 获取并由 list_templates() 使用。

尽管您可以尝试使用 monkey patch :

from alembic.config import Config

def get_template_directory(self):
    return "my/custom/template/directory"

Config.get_template_directory = get_template_directory

# Invoke Alembic code

附注我想知道为什么 Alembic 不使用入口点来收集可用模板。

关于python - 如何在alembic初始化期间使用自定义模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21508255/

相关文章:

python - Alembic 的 server_default 和 Postgres

python - 根据键对python列表进行排序

python - 计算完整数据帧中每个 Sequence_ID 的最大频率

python - Sqlalchemy 覆盖关联表中的字段

python - 不同类型的 SQLAlchemy 列同义词

sqlalchemy - add_column中使用的Alembic默认值

python - 如何在Kafka脚本中正确删除然后创建主题?

python - 动态继承的设计模式

mysql - 如何使用不同的凭据创建到同一数据库的多个 sqlalchemy 连接?

ssl - 如何通过 SSL 连接使用 Alembic?