我使用多对多的关系;
用户实体;
/** * @ORM\ManyToMany(targetEntity="Conversation", inversedBy="users") */ protected $conversations;
会话实体;
/** * @ORM\ManyToMany(targetEntity="User", mappedBy="conversations") * @ORM\JoinTable(name="user_conversation") */ protected $users;
什么时候,我工作这个功能;
$user->getConversations();
Symfony在后台运行这个sql代码;
SELECT t0.id AS id1, t0.conversationid AS conversationid2 FROM Conversation t0 INNER JOIN user_conversation ON t0.id = user_conversation.conversation_id WHERE user_conversation.user_id = ?
并选择所有对话.这将是性能问题.所以,我使用存储库类.但是,我不能一起做多对多和限制功能.我该怎么办?我写的什么到存储库类?