2012-03-03 4 views
3

私はプロジェクトの一部としてdjangoアプリケーションを開発しています。私はそれを他の人が使うことができるジェネリックアプリとしてリリースするつもりです。自分のgitの履歴を使ってそれを別のディレクトリに展開してから、pip install ~/path/to/new/appをインストールして、私のdjangoプロジェクトで使用します。サードパーティのDjangoアプリケーションにサウスマイグレーションを追加する

しかし、履歴の一部として、またインストールされるコードの一部として、アプリケーション自体に南の移行を含めることができます。これは、djangoアプリを配布し、南の移行を含む人の例です。https://github.com/bmentges/django-cart

これを行う最も簡単な方法は何ですか?アプリのフォルダにいくつかのマイグレーションを追加するにはどうしたらいいですか?

答えて

1

pip install -e path/to/appを使用すると、pipはアプリケーションをコピーせず、代わりに開発中のディレクトリを参照します。

次に、あなたがアプリケーションで作業するときに使用する "プロジェクト"には、アプリケーションとしてsouthが含まれている必要があります。 south manage.pyコマンドを使用して移行を作成した場合、それらは適切なアプリのmigrationsディレクトリに配置されます。

+0

私はあなたがそれを行うことができるかどうかはわかりませんでした。 svn/git/$ VCSからpipをインストールしても、それが 'ローカルディレクトリのインストール'でどのように動作するのかわからない場合、 '' -e''を使うことができると私は知っていました。それはまさに私が望んでいたものです! – Rory

0

アプリのフォルダ内に「マイグレーション」フォルダ(デフォルトはサウス)がある限り、他の設定なしで完璧に動作するはずです。たくさんのアプリがこのように構築されています。がんばろう。

+0

はい、わかりました。適切な場所にマイグレーションファイルを自動作成する簡単な方法を探しています。 – Rory

+0

サードパーティのアプリケーションでマイグレーションファイルを作成したいのですか?それらを分離してください。私は南がどう行動するかは知らない。 – xeor

関連する問題