使用 Zend Framework 3 中的选项调用服务
Call Service With Options In Zend Framework 3
在 ZF3 中,我使用以下表示法从控制器调用表单工厂:
$form = $this->formManager->get(myForm::class);
没有
$form = new myForm();
在工厂中,我使用 ZF3 推荐的方法:
public function __invoke(ContainerInterface $container, $requestedName, array $options = null)
{
//...
}
我假设 $options
数组用于将参数传递给函数。如何在控制器中填充 $options
数组?
我觉得上面的FormManager
也是child的ServiceManager
。所以,不要像这样使用 get()
$form = $this->formManager->get(myForm::class);
我想你可以使用 build()
。这里的例子
$form = $this->formManager->build(myForm::class, $options);
并且选项应该在表单工厂中传递
public function __invoke(ContainerInterface $container, $requestedName, array $options = null)
{
return MyForm($options);
}
在 ZF3 中,我使用以下表示法从控制器调用表单工厂:
$form = $this->formManager->get(myForm::class);
没有
$form = new myForm();
在工厂中,我使用 ZF3 推荐的方法:
public function __invoke(ContainerInterface $container, $requestedName, array $options = null)
{
//...
}
我假设 $options
数组用于将参数传递给函数。如何在控制器中填充 $options
数组?
我觉得上面的FormManager
也是child的ServiceManager
。所以,不要像这样使用 get()
$form = $this->formManager->get(myForm::class);
我想你可以使用 build()
。这里的例子
$form = $this->formManager->build(myForm::class, $options);
并且选项应该在表单工厂中传递
public function __invoke(ContainerInterface $container, $requestedName, array $options = null)
{
return MyForm($options);
}