我使用表单生成器来创建我的表单。我将选项团队添加到FormBuilderInterface表单中以访问此属性。
class PersonnalStatType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('tag', EntityType::class, [
'class' => StatTag::class,
'choice_label' => 'name',
'query_builder' => function (StatTagRepository $rep/*, $options*/)
{
return $rep->queryActivated($options['team']);
}
]
)
;
}
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults([
'data_class' => PersonnalStat::class,
'team' => null
]);
$resolver->setAllowedTypes('team', ['null', Team::class]);
}
第一行是一个EntityType,我需要使用团队选项来执行查询,但我不知道如何继续。
到目前为止,我尝试过:
'query_builder' => function (StatTagRepository $rep)
{
return $rep->queryActivated($options['team']);
}
但查询不知道$options
注意:未定义的变量:选项
和
'query_builder' => function (StatTagRepository $rep, $options)
{
return $rep->queryActivated($options['team']);
}
但它不承认$options
函数 App\Form\PersonnalStatType::App\Form{closure}() 的参数太少,1 传入 /Users/pierrickrambaud/Sites/team-manager/vendor/symfony/doctrine-bridge/Form/Type/EntityType.php在第 32 行,预计正好 2
有人知道黑客吗?
烙印99