私は自分の django プロジェクト、dev と production に 2 つの環境を使用しています。ほとんどの場合、私は開発に取り組んでいます。モデルのフィールドを変更するときは、南を使用して新しいモデルに移行しています。
私が理解していないのは、どうすればそれを本番データベースに転送できるのですか? 私がやっていることは、コードを SVN にコミットし、本番環境で更新してから、移行を試みることです。
移行ディレクトリとファイルをコミットする必要がありますか? または私はすべきではありませんか?本番マシンに移行しようとすると、常に失敗するようです。
編集:追加のテストを行いました。サウス ヒストリ テーブルをクリアし、移行ディレクトリをすべて削除しました。
今、私が実行しているローカル環境で: python manage.py convert_to_south app_name
すべてが完璧に機能しているようです。モデルにフィールドを追加して実行しました: python manage.py schemamigration app_name --auto
期待どおり、新しいフィールドがデータベースに移行されました。ここで、移行フォルダーに .py ファイルをコミットしました (0001 の初期値と新しいフィールドの 0002 が含まれています)。
私の開発環境では、移行ファイルを含むツリーを更新しました。python manage.py syncdb を実行します。south_migrationhistoryテーブルが作成されましたが、空です。
今、私は python manage.py schemamigration app_name --auto を実行し、「何も変わっていないようです」という結果になりました。
south_migrationhistroy はまだ空です.....ここで何が間違っているのかわかりません