/ ドクトリンORMを持つ/ zf2生成エンティティ - php、zend-framework2、zfdoctrine

ドクトリンORMを持つzf2生成エンティティ - php、zend-framework2、zfdoctrine

私はDoctrine ORMとZF2で生成されたEntityクラスを持っています。

テーブル構造を変更し、エンティティクラスを更新したいので、エンティティクラスを再生成しようとしていますが、うまくいきません。

私は次のコードを使用しました:

vendor / doctrine / doctrine-module / bin / doctrine-module orm:変換マッピング--namespace = "AlbumEntity" --force --from-databaseアノテーション./module/Album/src/clear

私はエラーがある:

[DoctrineORMMappingMappingException]
"AlbumEntityTestRun"のプロパティ "status"はすでに宣言されていますが、宣言は1回だけでなければなりません
orm:convert-mapping [--filter = "..."] [--force] [--from-database] [--extend [= "..."]] [--num-spaces [= " ... "]] [--namespace [=" ... "]] to-type dest-path

特定のテーブルのエンティティクラスを再生成したい

回答:

回答№1は0

Entityファイルの構造を簡単に変更すると vendorbindoctrine-module orm:schema-tool:update --force Entityの定義に従ってテーブルを変更します。

それでもテーブルを再作成したい場合は、MySQLからテーブルを削除してupdateコマンドを実行してください。キャッシュファイルが残っているかもしれないので、それらをクリアするのも良い考えかもしれません。

次のようにして完全なキャッシュを消去できます。

vendorbindoctrine-module orm:clear-cache:query
vendorbindoctrine-module orm:clear-cache:result
vendorbindoctrine-module orm:clear-cache:metadata

回答№2の場合は0

上で述べたように、それは悪い習慣かもしれませんが、それでも私はあなたが尋ねている結果を達成するために次のコマンドを使います:

vendorbindoctrine-module orm:convert-mapping --filter="Evaluation" --namespace="MyModuleEntity\" --force --from-database annotation ./module/MyModule/src/

そして、ゲッターとセッターを生成するためのもう一つのコマンド:

vendorbindoctrine-module orm:generate-entities --filter="Evaluation" ./module/MyModule/src/ --generate-annotations=true