Mam 3 proste tabele: użytkownik, rola, user_x_role z relacją wiele do wielu. Mam 2 podmioty: użytkownik i rola. Podmiot użytkownika ma właściwość $ userRoles z adnotacją relacji. W kontrolerze muszę pobrać wszystkich użytkowników o określonej roli. Ale nie wiem, jak używać JOIN w kontrolerze. Bieżący nieprawidłowy kod:findBy z kryteriami JOIN w Symfony2
$role = $this->getDoctrine()->getRepository('TestBackEndBundle:Role');
$roles = $role->findBy(array('name' => 'ROLE_PARTNER'));
$user = $this->getDoctrine()->getRepository('TestBackEndBundle:User');
$partners = $user->findBy(array('userRoles' => $roles));
Oznacza "Niezdefiniowany indeks: joinColumns in ...". Ale mam joinColumns w jednostce User:
/**
* @ORM\ManyToMany(targetEntity="Role")
* @ORM\JoinTable(name="user_x_role",
* joinColumns={@ORM\JoinColumn(name="user_id", referencedColumnName="id", onDelete="CASCADE", onUpdate="CASCADE")},
* inverseJoinColumns={@ORM\JoinColumn(name="role_id", referencedColumnName="id", onDelete="CASCADE", onUpdate="CASCADE")}
*)
* @var ArrayCollection
*/
protected $userRoles;