2012-08-17 12 views
10

アプリケーションごとにサウス・マイグレーションを実行すると、作成された移行が順序通りに行われません。これは、移行間の依存関係に何らかの問題を引き起こす可能性があります。場合によっては、移行クラスにdepends_on属性を追加する必要があります。django-south移行順序

作成された順番で南マイグレーションを実行できますか?そして、誰もがこのようにしている理由を知っていますか?

答えて

19

Southは、複数のアプリ間でどのような順序で移行を作成したのかわかりません。それはファイルシステムのメタデータを見ることができますが、それはパッケージマネージャーを介してインストールされたサードパーティのアプリケーションや、アプリケーションのデプロイ時にひどく壊れてしまいます。

depends_onneeded_byの属性は、このユースケースで正確に使用されています。そのために使用してください。 http://south.readthedocs.io/en/latest/dependencies.htmlも参照してください。