Symfony2のマニュアル(http://symfony.com/doc/current/cookbook/doctrine/reverse_engineering.html)に記載されているように、標準コンソールコマンドを使用してデータベースからエンティティを生成しようとしています。doctrineとsymfony2を使用してデータベースビューからエンティティを生成する方法
php app/console doctrine:mapping:convert --from-database --force yml "src/My/HomeBundle/Resources/config/doctrine/metadata/orm"
php app/console doctrine:mapping:import MyHomeBundle yml
php app/console doctrine:generate:entities MyHomeBundle
この後、すべてのテーブルが正しく生成されます。問題は、これがデータベースビューのエンティティを生成しないことです。私は、例えばSRC /マイ/ HomeBundle /リソース/設定/ドクトリン/メタデータ/ ORMにYMLファイルを自分で追加する場合:
UserInGroup:
type: entity
table: user_in_group_view
fields:
id:
id: true
type: integer
unsigned: false
nullable: false
generator:
strategy: IDENTITY
userId:
type: integer
unsigned: false
nullable: false
column: user_id
userGroupId:
type: integer
unsigned: false
nullable: false
column: user_group_id
lifecycleCallbacks: { }
php app/console doctrine:generate:entities MyHomeBundle
を実行しているとき、私はこの例外を取得:
Notice: Undefined index: My\HomeBundle\Entity\UserInGroup in C:\Users\ThisIsMe\Projects\SymfonyTestProject\vendor\doctrine\lib\Doctrine\ORM\Mapping\Driver\AbstractFileDriver.php line 121
同様の問題でしたここに投稿されました:How to set up entity (doctrine) for database view in Symfony 2
私はEntityクラスを作成できますが、私はこれを得ることができると私は私のビューを変更する場合、私はエンティティクラスを再生成することができます期待していた。助言がありますか?
これは私の質問で説明した同じ手順であり、これはビュー用ではないすべてのテーブルのエンティティを生成します。差異は、生成されたymlファイルの宛先パスにあります。私はあなたのソリューションを試してみましたが、問題はテーブルをエンティティに変えて解決しません。Doctrine(とSymfony)の初期のバージョンでは、問題なくビューからオブジェクトを生成することができます。 – Kosta