在ZF3中,我使用这种表示法从控制器调用表单工厂:
$form = $this->formManager->get(myForm::class);
不
$form = new myForm();
在工厂,我正在使用ZF3推荐的方法:
public function __invoke(ContainerInterface $container, $requestedName, array $options = null)
{
//...
}
我假设$options
数组用于将参数传递给函数。如何填充控制器中的$options
数组?
答案 0 :(得分:2)
我认为TicketFetcher
也是FormManager
的孩子。所以,不要像这样使用ServiceManager
get()
我认为您可以使用$form = $this->formManager->get(myForm::class);
。这里的例子是
build()
选项应该以表格工厂
传递$form = $this->formManager->build(myForm::class, $options);