如何使用 zend-form 视图助手?
这样做... 如何使用 zend-form 视图助手?
结果,有关已弃用的类配置的消息在 此处输入图像描述
我究竟做错了什么?
看看这个https://github.com/zendframework/zend-expressive/issues/335
这是我的工厂的样子:
public function __invoke(ContainerInterface $container)
{
$config = $container->has('config') ? $container->get('config') : [];
$config = isset($config['view_helpers']) ? $config['view_helpers'] : [];
$manager = new HelperPluginManager($container, $config);
return $manager;
}
更新:
由于我不清楚,让我们再试一次。
正如您从 github 上的帖子中看到的那样,为了删除有关已弃用类的消息,您需要创建一个config/autoload/zend-form.global.php
包含以下内容的文件:
<?php
use Zend\Form\ConfigProvider;
$provider = new ConfigProvider();
return $provider();
这样做消除了从您正在创建的工厂中将 zend-form 视图帮助程序配置添加到服务管理器的需要。
意义线
$formConfig = new FormHelperConfig();
$formConfig->configureServiceManager($manager);
不再需要。
此外,不推荐使用方法setServiceLocator
,HelperPluginManager
因此您更改以下两行:
$manager = new HelperPluginManager(new Config($config));
$manager->setServiceLocator($container);
一行:
$manager = new HelperPluginManager($container, $config);
结果,您的__invoke
函数将如下所示:
public function __invoke(ContainerInterface $container)
{
$config = $container->has('config') ? $container->get('config') : [];
$config = isset($config['view_helpers']) ? $config['view_helpers'] : [];
$manager = new HelperPluginManager($container, $config);
return $manager;
}
您在视图模板中使用视图助手。在这里您可以找到所有 zend-form 视图助手的列表以及示例。
我希望这能让事情变得更清楚,因为我不擅长解释事情。