【问题标题】:Add South Migrations to a 3rd party Django Application将 South Migrations 添加到第 3 方 Django 应用程序
【发布时间】:2012-03-03 17:43:27
【问题描述】:

我正在开发一个 django 应用程序作为我项目的一部分。我计划稍后将它作为其他人可以使用的通用应用程序发布,因此我正在另一个目录中使用它自己的 git 历史开发它,然后pip install ~/path/to/new/app 在我的 django 项目中安装和使用它。

但是,我想在应用程序本身中包含南迁移,作为历史记录和安装代码的一部分。这是某人分发 django 应用程序并包含南迁移的示例https://github.com/bmentges/django-cart

最简单的方法是什么?如何将一些南迁移添加到一个应用文件夹?

【问题讨论】:

    标签: python django django-south django-apps


    【解决方案1】:

    如果你使用 pip install -e path/to/app,那么 pip 不会复制应用程序,而是引用你正在开发的目录。

    然后,您在开发应用程序时使用的“项目”应该包含作为应用程序的南。如果您使用 south manage.py 命令创建迁移,它们将被放入相应应用的迁移目录中。

    【讨论】:

    • 我不知道你能做到。我知道-e 可以用于从 svn/git/$VCS 进行 pip install 但不知道它对“本地目录安装”的工作方式。这正是我想要的!
    【解决方案2】:

    只要你的应用文件夹中有一个“迁移”文件夹(默认为南),它应该可以在没有任何其他配置的情况下完美运行。很多应用都是以这种方式构建的。祝你好运。

    【讨论】:

    • 是的,我知道,我只是在寻找一种简单的方法来在正确的位置自动创建迁移文件
    • 您是否想在 3rd 方应用程序上创建迁移文件,即使它是您的应用程序,我认为您应该将它们分开。我不知道南方会如何表现。
    猜你喜欢
    • 2011-08-26
    • 1970-01-01
    • 2012-12-23
    • 2015-10-16
    • 2012-01-31
    • 2012-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多