7

私はここ数日の意味についてよく考え続け、 django-southmigrating a Django appでDjangoアプリを移行することについて聞いた。多分それは十分な英語スキルの欠如(英語は私の母国語ではないので)か、これはプログラマーの生活の中で直面するものの1つであり、非常に単純で、(最初は)それらを理解するには天才が必要です。

私は母国語での「migrate」の翻訳を読み、migrationウィキペディアでの定義を読み、次のように引用してdjango-southの「アイデア」を読みました。

Southでは、それをインストールしてから、1つ以上のアプリにいくつかの移行を行います(手動で書き込むか、モデル定義から自動生成します)。syncdbを実行すると、移行がないアプリ(たとえば、スキーマが固定されているdjango.contrib.authなど)のみが同期されます。次に、。/ manage.py mergeを実行すると、Southが起動します。移行を行います。インテリジェントに。

これは紛らわしいですが、「djangoアプリケーションの移行」または「一般的な移行」の背後にあるすべてをまだ理解していません。単語の解釈の仕方を知っていればわかりますmigration

あなたはポイントを得る、私は願っています。

我慢してください、でも本当に知りたいです。だから多分あなたの一人が私を説明してくれますか。

よろしくお願いします。

4

2 に答える 2

10

SouthとDjangoについて話す場合、移行とはデータベーススキーマの変更を指します。

Djangoに組み込まれているコマンドは、最初にすべてを削除せずにスキーマを自動的に変更することはできません。syncdbそのため、Southやdmigrationsなどが発生しています。

したがって、基本的に移行は、データをそのまま維持しながらデータベーススキーマを変更する方法です。

移行ページから:

移行では、データベースへのすべての変更(初期テーブルの作成を含む)が移行にバンドルされます。移行は、移行ディレクトリにあるPythonファイルです。それらは、順番に適用および非適用(元に戻す)することができます。

于 2009-12-22T23:51:41.690 に答える
1

移行とは、通常、アプリケーションをある場所から別の場所に移動することを指します。この変換は、物理的な動きを介して発生する可能性があります。(あるサーバーから別のサーバーへの移動など)、またはより論理的な移動として。(C#からF#など)

言及されているテクノロジーは1つだけです。これは主に、データベース側のわずかな論理的な動きを伴う物理的な動きのアプリケーションである可能性があります。

アプリケーションの機能を要約します。おそらく、すべての構成とデータをファイル構造にエクスポートし、それを新しいサーバー上のデータベースに再統合することができます。

于 2009-12-22T23:47:58.337 に答える