Merci pour votre réponse Alex-D, voila mon VoterForm j'espère que c'est claire:
class VoterForm extends AbstractType {
public function buildForm(FormBuilderInterface $builder, array $options) {
// $qb = $em->createQueryBuilder();
$builder->add('critere', 'entity', array(
'class' => 'MyVoteBundle:Vote',
// 'property' => 'titre',
'property' => 'critere',
'query_builder' => function(VoteRepository $v) {
return $v->getCritereVote();
// ladybug_dump($v);
foreach ($nom as $v) {
$builder->add($nom, 'choice', array(
'choices' => array('pas_bien' => 'Pas bien', 'acceptable' => 'Acceptable', 'bon' => 'Bon', 'tres_bon' => 'Très Bon', 'excellent' => 'Excellent'),
'expanded' => true,
'multiple' => false
));
}
// $builder->add('save', 'submit')
// ->getForm();
}
));
}
public function getName() {
return 'critere';
}
}
Mon getCritereVote est là:
public function getCritereVote() {
$qb = $this->createQueryBuilder('a');
$qb->select('a.nom')
->leftJoin('a.typevote', 't')
->where('t.typeVote_id = 13') // j'ai pris l'exemple de 13 pour typeVote_id
->distinct('a.id');
return $qb->getQuery();
// ->getResult();
}