2016-05-05 6 views
0

私は、EntityエンティティとOneToMany関係を持つエンティティEquipeを持っています。チームには多くの従業員がいることを意味します。 EquipeTypeでは、従業員のリストを表示しようとしましたが、そのチームの従業員を追加したい場合は、チェックするだけです。それは動作しますが、私の問題は、名前、ID、および他のすべてのプロパティを表示し、テーブルに配置する方法です。私は声明が必要ですが、何を入れるべきですか?おかげオプションでのSymfony 2.7 property以来this is how I get it in my twigBuildFormのQueryBuilder

マイFormBuilder

->add('date') 
     ->add('nom') 
     ->add('employes', 'entity', array(
      'class' => 'OCUserBundle:Employe', 
      'property' => 'username', 
      'multiple' => true, 
      'expanded' => true, 
      'query_builder' => function (EntityRepository $er) { 
       return $er->createQueryBuilder('u') 
        ->orderBy('u.id', 'ASC'); 
      }, 

マイ小枝

{{form_widget(form.employes)}} 
+0

どのSymfony2バージョンを使用しますか? –

+0

私はSymfony 2.6を使用しています –

答えて

0

choice_labelに変更され、この

'choice_label' => function ($employee) { 
    return $employee->getName().'/'.$employee->getId(); 
} 

のようにコールバックすることができ、これがありで説明されていますあなたは以前の2.7バージョンよりもsymfonyのを使用する場合は

あなたは、従業員のメソッドを宣言する必要があり、このような何か:

public function getDisplayName() 
{ 
    return $this->getName().'/'.$this->getId(); 
} 

'property' => 'display_name' 

EntityType field documentation for Symfony 2.6を参照のようにオプションでプロパティを宣言します詳細については。