2017-11-09 5 views
0

私の必要なのは、データベース内の現在の構造を記述し、私のモデルがdbの構造に合わせられていないため、だから私は現在の状態を取得し、私のモデルで定義された私の変更を適用し、それらを整列させたいと思います。 可能ですか?そしてどうやって?djangoのモデルではなく、dbから現在のdbの移行ステータスを取得します

+0

「私のモデルはDBの構造に揃えられていません」とはどういう意味ですか? – Satendra

+0

私のモデルでは、実際のデータベースとは異なる構造のテーブルにすることができます、私は現在の状態から私のデータベースに持って来たい状態 – Giuseppe

+0

可能な複製https://stackoverflow.com/questions/1179469/is-it-possible -to-generate-django-models-from-the- – Satendra

答えて

1

Django-adminにはデータベースからモデルを作成するコマンドがあります:inspectdbdocumentation hereが見つかります。

アイデアはに次のようになります。最初のinspectdb

  • レビューに結果を使用して初期モデルを生成し、必要に応じて、あなたが良く知っていれば得るためにmakemigrationsを実行し
  • 、フィールドタイプを変更

    • あなたの現在のデータベースのマイグレーションと
    • あなたのアプリケーションの現在のものにあなたのモデルを変更し始めて
    • を実行再び。

    これはかなり複雑な操作ですが、2つのデータベースを持ち、最初のデータから新しいデータに移動することをお勧めします。 Djangoはあなたのデータベースにたくさんのテーブルを追加します。おそらくこれはあなたのレガシーデータベースには必要ありません。 this blog post

  • +0

    これは可能な方法ですが、 100%信頼できるものではないため、自動化されたプロセスには使用できません – Giuseppe

    +0

    残念ながら、手作業でdjangoアプリケーションにレガシーDBを統合することになります。私はこれが確実に自動化できるとは思わない。それは単発的なものなので、なぜそれが問題なのか分かりません – dirkgroten

    関連する問題