Я пытаюсь получить классы от учителя во многих отношениях.
$classrooms = $this->getDoctrine()->getManager()->getRepository('AppBundle:Classroom')->findBy(array('teachers' => $teacher));
Но я получаю ошибку. Доктрина не монтирует соединение:
Исключение произошло при выполнении «ВЫБЕРИТЕ t0.id КАК id_1, t0.name КАК имя_2, t0.institution_id КАК организация_id_3 ИЗ класса t0 ГДЕ class_teacher.teacher_id = ?» с параметрами [4]:
SQLSTATE [42S22]: столбец не найден: 1054 Неизвестный столбец «classroom_teacher.teacher_id» в «предложении where»
Но я использую многие ко многим
Класс класса
/**
* Classroom
*
* @ORM\Table()
* @ORM\Entity(repositoryClass="AppBundle\Repository\ClassroomRepository")
*/
class Classroom
{
/**
* @ORM\ManyToMany(targetEntity="Teacher", cascade={"persist"}, inversedBy="classrooms")
*/
private $teachers;
public function __construct()
{
$this->teachers = new ArrayCollection();
}
}
Учитель класса
/**
* Teacher
*
* @ORM\Table()
* @ORM\Entity(repositoryClass="AppBundle\Repository\TeacherRepository")
*/
class Teacher implements AdvancedUserInterface, \Serializable
{
/**
* @ORM\ManyToMany(targetEntity="Classroom", mappedBy="teachers")
*/
protected $classrooms;
public function __construct()
{
$this->classrooms = new ArrayCollection();
}
}
Что не так?