0

EBean を ORM API として使用する Play フレームワークのプロジェクトに取り組んでいます。アプリケーションを公開した後にモデルを変更する必要がある場合、どうすれば古いデータを保存できるのでしょうか? 各更新後に新しい畳み込みが作成され、データがリセットされるためです。

4

1 に答える 1

2

Play 2.x の Ebean のプラグインは、常に完全な構造を削除して再作成します。これにより、データが失われます。変更された要素のみを更新することはサポートされていません (純粋な Ebean であっても) 、フォーラムの投稿を参照してください

唯一の回避策は、それを無効にして次の進化 (2.sql、3.sql など) を手動で作成し、変更/追加されたテーブルと列のみを配置することです。次に、ファイル 1.sql ファイルで、最初の 2 行を削除します (これは、プラグインで作成されたことを示しています)。このような場合、DDL 全体を再度生成しようとせず、手動の進化を探します。

オプションで、お気に入りの GUI を使用して DB の変更を管理できます。

Ebean プラグインを完全に無効にするには、次の行を に追加 (またはコメント解除) しますapplication.conf

evolutionplugin=disabled
于 2013-04-27T12:09:34.907 に答える