次のスキーマの場合:
動物-年齢-性別-サイズ
猫は動物を拡張します-fur_color
ヘビは動物を拡張します-scales_color
象は動物を拡張します-tusks_size
私が行うと$em->getRepository('AcmeDemoBundle:Animal')->findAll()
、私は上のコレクションを受け取るだろうAnimal
、そのサブクラスのプロパティなしオブジェクト。
その場合$em->getRepository('AcmeDemoBundle:Cat')->findAll()
、サブクラス(Cat)プロパティを持つオブジェクトを受け取りますが、Catオブジェクトのみを受け取ります(ヘビや象は受け取りません)。
例えば。このようなデータベースの場合:
動物テーブル:
ID | discr | age | gender | size | fur_color | scales_color | tusks_size
1 | snake | 2 | male | 20ft | NULL | green | NULL
2 | cat | 3 | female | 5ft | red | NULL | NULL
3 | eleph | 6 | male | 99ft | NULL | NULL | 40ft.
4 | cat | 2 | male | 6ft | grey | NULL | NULL
以下のコレクションを受け取りたいのですが。
確かに、構成にエラーがあったようです。@Bezと@Ceradが提案したように、バンドルを再作成してエンティティを再度書き込むと、問題が修正されました。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加