我已找到更多关于此的答案,但返回错误“选项”prova“不存在”
我做到了
在defaultcontroller.php
$form = $this->createForm(new ProvinciaType(), $provincia, array('prova' => 'ciao'));
ProvinciaType.php
中的
public function buildForm(FormBuilder $builder, array $options)
{
$builder->add('name', 'entity', array(
'class' => 'AcmeIndexBundle:Provincia',
'query_builder' => function(EntityRepository $er) {
return $er->createQueryBuilder('u')
->orderBy('u.name', 'ASC');
},'empty_value' => $options['prova']
));
}
但不行吗?
答案 0 :(得分:5)
只需将其传递给构造函数:
$this->createForm(new ProvinciaType($options), $provincia)
并以以下形式使用:
public function __construct($options) {
$this->options = $options;
}
然后在buildForm中使用它:
$options = $this->options;
....
function(EntityRepository $er) use ($options)
...
},'empty_value' => $options['prova']
....