Моя таблица базы данных "документы":
id uuid timestamp name pages
86 37a4a52951 2019-10-18 18:13:08 something1 9
87 g4fbc106ab 2019-10-18 18:18:46 something2 23
91 77d2fde844 2019-10-21 15:58:37 Blue 16
92 9f05834314 2019-10-21 15:58:52 Black 16
93 9a7d8e32b2 2019-10-21 16:00:20 Orange 16
94 32b38338a1 2019-10-21 17:13:18 test 3
Моя таблица базы данных "данные":
id uuid content field document_id
805 14cc8a5e48 Baloons 35 77d2fde844
806 6a0c9dfcc1 Bob 81 77d2fde844
807 c9061ea3e0 Fairytales 35 9f05834314
808 ed5cbb124a Alan 81 9f05834314
809 59f33d724c Dreams 35 9a7d8e32b2
810 b8c0fc2f6f Oliver 81 9a7d8e32b2
811 8fad6b9334 Banana 85 4fc75ebbdf
С помощью formbuilder и построителя запросов я пытаюсь создать поле выбора со всеми даннымиэто связано с документом со страницей 16
и полем 35
.
Вывод, который я пытаюсь напечатать, таков:
<select>
<option value="91">Baloons</option>
<option value="92">Fairytales</option>
<option value="93">Dreams</option>
</select>
Это мой подход:
$options['class'] = 'App\\Entity\\Data';
$options['attr'] = array('class' => 'form-control select2');
$options['query_builder'] = function (EntityRepository $er) use ($fieldId,$documentId) {
return $er->createQueryBuilder('data')
->leftJoin('data.documents', 'dd')
->andWhere('dd.pages = :id')
->andWhere('dd.uuid = data.document_id')
->andWhere('data.field = :field')
->setParameter(':id', 16)
->setParameter(':field', 35)
;
};
$options['choice_label'] = 'content';
Сообщение об ошибке:
[Семантическая ошибка] строка 0, столбец 127 рядом с 'field =: fie': Ошибка: Class App \ Entity \ Data не имеет поля или ассоциацииименованное поле