Symfony EntityType - 如何隐藏值?
Symfony EntityType - how to hide values?
我正在呈现一个带有 EntityType 字段的表单,如下所示:
$builder
->add('categoryId',EntityType::class,array('class' => 'TestBundle:BudgetCategory','choice_label'=>'description'))
//etc...
现在它正在显示所有可能的选项。
但我的 BudgetCategory 实体还包含 "hidden" 字段,我不想显示隐藏值设置为 true 的选项。
我该怎么做?
EntityType
有选项 query_builder
让你 customize which entities are fetched
它会是这样的:
->add('categoryId',EntityType::class,array(
'class' => 'TestBundle:BudgetCategory',
'choice_label'=>'description',
'query_builder' => function (EntityRepository $er) {
return $er->createQueryBuilder('b')
->where('b.hidden = 1');
},
))
我正在呈现一个带有 EntityType 字段的表单,如下所示:
$builder
->add('categoryId',EntityType::class,array('class' => 'TestBundle:BudgetCategory','choice_label'=>'description'))
//etc...
现在它正在显示所有可能的选项。
但我的 BudgetCategory 实体还包含 "hidden" 字段,我不想显示隐藏值设置为 true 的选项。
我该怎么做?
EntityType
有选项 query_builder
让你 customize which entities are fetched
它会是这样的:
->add('categoryId',EntityType::class,array(
'class' => 'TestBundle:BudgetCategory',
'choice_label'=>'description',
'query_builder' => function (EntityRepository $er) {
return $er->createQueryBuilder('b')
->where('b.hidden = 1');
},
))