6

リレーショナル データベース (MySQL) の ORM としてフラスコ peewee を使用したいのですが、問題はモデルの構造の変更です... モデルに新しい属性を追加するなど (これはデータベース内の列を意味します)。SQL を手動で記述せずにこれを自動的に実行できるかどうか知りたいですか?

4

3 に答える 3

6

当社で使用するためにhttps://github.com/keredson/peewee-db-evolveを開発しました。

移行を手動で記述するのではなく、db-evolve は既存のスキーマと定義済みのモデルとの差分を計算します。次に、非破壊的な SQL コマンドをプレビューして適用し、スキーマを整えます。これは、スキーマ管理のより堅牢なモデルであることがわかりました。(たとえば、スキーマの変更が異なる任意のブランチ間の切り替えは、この方法では簡単ですが、手動で作成された移行では事実上不可能です。)

例:

ここに画像の説明を入力

Peewee の非破壊バージョンと考えてくださいcreate_tables()。(実際、テストでスキーマをゼロから構築するために、常にそれを使用しています。)

于 2016-11-23T19:41:09.703 に答える