ユーザー(User
)と友情リクエスト()を表す2つのエンティティがありますFriendshipRequest
。UserとFriendshipRequestの間にはoneToManyの関係があるため、DoctrineはgetFriendshipRequests()
クラスUserで呼び出されるメソッドを作成します。これは問題ありませんが、FriendshipRequestにはstatusという属性があるため、Userクラスに関連付けられているフレンドシップリクエストをフィルタリングして、ステータスに参加させたいと思います。Doctrineのドキュメントを読みましたが、次のことがわかりました。
ネイティブでは、2.0および2.1では関連付けをフィルタリングできません。フィルタリングされたエンティティのセットをクエリするには、DQLクエリを使用する必要があります。
これによると、FriendshipRequestリポジトリを作成し、「findByStatusAndUser」(またはそのようなもの)というメソッドを作成する必要があると思いますが、それはくだらない解決策だと思います。
Userエンティティに。のようなメソッドが必要getPendingStatusRequests()
です。これは可能ですか?そうでない場合、最善の解決策は何でしょうか?