2

私は南をインストールし、いくつかの移行を行いました。これで、フォルダー app に「migrations」ディレクトリができました。私の質問は、モデルをリファクタリングするとき、移行ディレクトリ ファイルのどのエントリに変更を適用する必要があるかということです。データベース スキーマに直接関連するエントリもあれば、コード自体に関連するエントリもあると思います。南のドキュメントでこれに対する答えを見つけることができませんでした。

4

1 に答える 1

0

モデルに変更を加えてから、 を実行しますpython manage.py schemamigration yourapp --auto。これにより、移行が作成されます (このプロセスを実行するたびに、移行ディレクトリに新しいファイルが表示されます)。

移行を手動で編集する必要がある場合もありますが、それを避けるようにしてください。特に、既に移行を実行している場合 (South アプリは、実行された移行の記録を保持するため、データベースの状態を認識します)。

South は、データベースを壊すことなく、異なるバージョンのコード間を移動できるように設計されています。migrations ディレクトリ内の各移行ファイルは、コードのスナップショット (具体的には のスナップショットmodels.py) を表します。を実行して、バージョンからバージョンに移行しますpython manage.py migrate yourapp version_no

于 2013-02-22T14:28:39.160 に答える