【问题标题】:Run db statement before south migrations when running django tests运行 django 测试时,在南迁移之前运行 db 语句
【发布时间】:2013-02-01 12:20:33
【问题描述】:

当我运行 django 测试时,我需要在创建测试数据库之后,但在我的南迁移运行之前执行一条 DB 语句。

语句如下,必须由具有管理员权限的用户(Postgres 9.1)执行:CREATE EXTENSION pg_trgm;

我在哪里可以连接到数据库创建逻辑来执行这个语句?我最好只想在测试运行期间执行该语句,因为数据库已经在生产中正确配置,而生产数据库用户没有足够高的权限来执行该语句。

【问题讨论】:

    标签: django django-south


    【解决方案1】:

    我猜你总是可以进行一个执行你的语句的迁移,并在其上进行所有其他迁移depend(以确保它首先运行)

    在生产中,您可以使用 --fake 运行它

    【讨论】:

    • 如何进行首先运行的迁移?我了解每个应用程序的迁移将如何按顺序运行,但是对于 South 如何选择应用程序迁移的顺序,我仍然有些模糊。如何强制应用 B 的迁移在应用 A 之前运行?
    猜你喜欢
    • 2011-05-02
    • 2019-04-06
    • 2022-07-06
    • 2017-03-13
    • 2018-10-06
    • 2016-11-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多