2016-06-24 5 views
0

私は2つのエンティティと1つのエンティティ "Comment"を持っています。私は他のエンティティを「コメント可能」にしたいので、そのオブジェクトのすべてのオブジェクトは多くのコメントを持つことができます。Symfonyは多くのエンティティタイプをバインドしますOneToManyから1つのエンティティ

何らかの理由で、これらのエンティティのOneToMany関係をCommentに設定して、データベースに混乱を与えないようにすることはできますか?私は、Commentエンティティ内のコメント可能なすべてのエンティティのフィールドを作成する必要がないソリューションに興味があり、コメントの対象となる特定のエンティティを指しています。コメントエンティティにコメントされたオブジェクトのIDとそのタイプを保持させるもの。出来ますか?確かに

+2

あなたのためにコードを記述していただきたいようです。多くのユーザーは、苦労しているコーダーのコードを作成したいと考えていますが、通常は、ポスターがすでに問題を解決しようとしているときにのみ役立ちます。この努力を実証する良い方法は、これまでに書いたコード、サンプル入力(もしあれば)、予想される出力、実際に得られる出力(コンソール出力、トレースバックなど)を含めることです。あなたが提供する詳細があれば、受け取る可能性の高い回答が増えます。 [FAQ](http://meta.stackexchange.com/q/7931)と[ask](https://stackoverflow.com/help/asking)を確認してください。 –

答えて

1

ことが可能です:ID、CLASS_NAME(文字列)、CLASS_ID(int型、あなたのIDは整数)とコメント(文字列):

1)エンティティのフィールドを持つ 'コメント' を作成します。

2)新しいコメントを作成するときは、コメントが属するエンティティのクラス名、コメントが属するオブジェクトのclass_id、およびコメントを保存します。

3)エンティティリポジトリに関数を作成します(または、特性を作成します)。 QueryBuilderはclass_idなどですべてのコメントを取得します。

ステップ3は、Doctrineに管理された関連付けがないため、独自に処理する必要があるため、すべての更新/削除などに適用されます。

楽しんでください。

関連する問題