0

私は symfony で Doctrine の移行をテストしてきましたが、最終的に動作するようになりましたが、これらの移行はデータベースのみを更新することに気付きました。期待どおりにフォームとモデルが更新されません...

これは正常ですか?正常な場合、データベースに加えられた変更でモデルを更新する方法はありますか?

4

2 に答える 2

5

これは正常です。

モデル/フォーム/フィルターなどを更新するには、

./symfony doctrine:build-all

タスク。

開発中は、おそらくデータベースにフィクスチャをロードしているので、doctrine:data-loadを使用してフィクスチャをロードします(またはbuild-all-reloadタスクを使用します)。

ただし、アプリが本番環境に移行すると、dbスキーマを変更するたびにすべてのデータを破棄したくないことは明らかです。ここで移行が行われます。

私のプロセスは次のとおりです。

  • schema.ymlを更新します
  • doctrine:build-allを開発環境で実行します。
  • 移行を作成する
  • 開発環境で開発/テストを実行します。
  • コードを本番環境にデプロイする
  • 移行を本番データベースに適用します。
于 2009-07-25T21:38:48.110 に答える
0

php symfony 1.4 php symfony doctrine:build ヘルプ メニューから

  You must include one or more of the following build options:    

--all、--all-classes、--model、--forms、--filters、--sql、--db

詳細については、このタスクのヘルプ ページを参照してください。

php symfony help doctrine:build  

これにより、よりきめ細かく、 --model --forms --filters などのみをビルドできます。

すべてビルドすると、データベースが再構築されるため、データベース内のすべてのデータが失われます。

于 2013-04-20T20:43:07.573 に答える