2017-09-07 1 views
0

Ich bin ein Formular mit EntityType Feld Rendering, wie folgt aus:Symfony EntityType - wie man Werte versteckt?

 $builder 
     ->add('categoryId',EntityType::class,array('class' => 'TestBundle:BudgetCategory','choice_label'=>'description')) 
     //etc... 

Und jetzt ist es alle möglichen Optionen angezeigt werden.

Aber meine BudgetCategory-Entität enthält auch "versteckte" Feld, und ich möchte keine Optionen mit versteckten Wert auf True eingestellt anzeigen.

Wie kann ich das tun?

Antwort

2

EntityType hat Option query_builder, die Sie customize which entities are fetched

lässt, es wäre so etwas wie:

->add('categoryId',EntityType::class,array(
    'class' => 'TestBundle:BudgetCategory', 
    'choice_label'=>'description', 
    'query_builder' => function (EntityRepository $er) { 
     return $er->createQueryBuilder('b') 
        ->where('b.hidden = 1'); 
    }, 
)) 
Verwandte Themen