Я пытаюсь создать простую форму с пакетом сонат. У меня есть одна проблема, пытаясь загрузить поле типа объекта данных. Я знаю, что это работает:
$formMapper->add( 'foo', 'entity', array(
'class' => 'myVendorMyBundleBundle:Foo',
'property' => 'id',
'query_builder' => function(FooRepository $er) {
return $er->createQueryBuilder('qb')
->add( 'select', 'f' )
->add( 'from', 'myVendorMyBundleBundle:Foo f' )
},
'label' => 'foo'
) );
Проблема в том, что я не хочу показывать идентификатор сущности, я хочу показать его имя, которое находится в реляционной таблице. Я попытался использовать оператор join в методе createQueryBuilder, но у меня ничего не вышло:
$formMapper->add( 'foo', 'entity', array(
'class' => 'myVendorMyBundleBundle:Foo',
'property' => 'b.name',
'query_builder' => function(FooRepository $er) {
return $er->createQueryBuilder('qb')
->add( 'select', 'f' )
->add( 'from', 'myVendorMyBundleBundle:Foo f' )
->add( 'join', 'myVendorMyBundleBundle:Bar b' )
},
'label' => 'foo'
) );
Кто-нибудь знает, как это сделать?
Спасибо.