解决方案是使用“query_builder”选项获取数据(不要忘记“addSelect”),然后使用“property”选项获取第一个翻译:
$builder
->add('country', 'entity', array(
'empty_value' => 'Select',
'label' => 'form.country',
'class' => 'MySiteBundle:Pays',
'property' => 'fkLibTradG.trads[0].valeur',
'query_builder' => function(\Doctrine\ORM\EntityRepository $er) {
return $er->createQueryBuilder('p')
->addSelect('tg')
->addSelect('t')
->join('p.fkLibTradG', 'tg')
->join('tg.trads', 't')
->where('t.fkLanguage = :language')
->setParameter('language', 1)
;
}
))
;