

お世話になります。PHPとsymfony勉強中です。

  * Parent/AdminBundle/
  * Parent/UserBundle/

二つのBundleがあります。  
テーブルは以下の3つです。(既に作成済みでデータも入っています。）

  * admin
  * user
  * product

productをAdminBundleからもUserBundleからも参照したいです。  
Parentの下にEntityを作れば良いのかと思いymlファイルを定義して生成を試してみたのですが

[code]

    $ sudo php app/console doctrine:generate:entities Parents
    Generating entities for namespace "Parents"
    
      [RuntimeException]                                            
      Namespace "Parents" does not contain any mapped entities.  
    
[/code]

というエラーが出てきてしまい、Entityを作成することができませんでした。  
どのようにすれば解決することができますか？


CC BY-SA 3.0
2015-04-01T10:51:29.190
8654
2015-05-19T15:41:40.987
2015-04-01T11:44:31.760
8000
9110
question
php symfony2
symfony2 Bundleを越えて1つのテーブルを参照したい


※誤りがあったので訂正しました。

CoreBundleのような共通のバンドルを作ってそこにEntityをまとめる事で、やりたい事が実現できると思います。


CC BY-SA 3.0
2015-05-19T14:17:22.417
10385
2015-05-19T15:41:40.987
2015-05-19T15:41:40.987
242
242
8654
answer


Issei.Mさんの回答と技術的には同じですが、内容を補足します。

Symfonyのバンドルという構造はソフトウェアのパッケージの単位ではありますが、1つのアプリケーション内で複数のバンドルを利用している場合に、パッケージをまたがる利用に制限はありません。どのバンドルのクラスをどこからでも利用可能です（オートロードが効くため）。

ただし、だからといって無制限にあちこちにエンティティが散らばると大変なので、通常はパッケージの依存の方向が1方向になるように、なるべく管理します。Issei.Mさんの回答のようにCoreBundleというところに共通で利用するのをまとめるのは、そのための1つの方法といった感じになります。


CC BY-SA 3.0
2015-05-19T14:37:11.143
10386
2015-05-19T14:37:11.143
5444
8654
answer