【问题标题】:How to add (not override) migrations to a third party app in Django (South)如何在 Django (South) 中添加(不覆盖)迁移到第三方应用程序
【发布时间】:2013-12-25 07:34:11
【问题描述】:

我正在尝试为第三方应用程序(在本例中为 django-waffle)添加 SOUTH_MIGRATION_MODULE。但是,我不想覆盖 django-waffle 中的迁移,我只想运行 additional 迁移。 (对于我的特定用例,我正在尝试创建添加 django-waffle 标志的数据迁移。)

SOUTH_MIGRATIONS_MODULESdocscode 似乎表明为应用指定迁移模块将覆盖应用的原始迁移。

【问题讨论】:

    标签: django django-south


    【解决方案1】:

    在编写数据迁移时,您可以使用--freeze 命令行标志指定哪些应用程序“参与”数据迁移。如果您有 gluecore 应用程序,我喜欢这样称呼它们,只需在此处添加您的数据迁移,并在命令行上指定 --freeze waffle。然后您可以通过orm['waffle.ModelNameHere'] 访问华夫饼模型。

    这样,您无需覆盖任何内容。您可能需要设置 depends_on 才能正确获取迁移顺序。

    【讨论】:

    • 谢谢,这就是我目前所做的。我有一个名为 third 的应用程序,我在其中为第三方应用程序进行迁移。然而,随着我继续向它添加从不同应用程序的迁移,它对我的​​口味变得有些混乱。而且我想避免仅出于迁移目的而添加更多应用程序。
    猜你喜欢
    • 1970-01-01
    • 2011-08-26
    • 2018-04-19
    • 1970-01-01
    • 2020-05-29
    • 2012-03-03
    • 2014-03-07
    • 2016-08-20
    • 2020-10-01
    相关资源
    最近更新 更多