解决关于$ this- get('twig')的弃用 - > getextension( '形式')

时间:2017-08-14 09:58:19

标签: symfony twig deprecated

我在应用程序中收到这样的消息:

Referencing the "form" extension by its name (defined by getName()) is deprecated since 1.26 and will be removed in Twig 2.0. Use the Fully Qualified Extension Class Name instead

导致此问题的代码是:

$this->get('twig')->getExtension('form');

似乎有一些相关的线程,但我一直无法找到解决方案。我也深入研究了弃用笔记,但我一直无法找到任何可以帮助我解决问题的东西。我要求一个明确的解决方案,我必须做什么来摆脱这个消息,这甚至不允许我尝试升级。

提前致谢。

1 个答案:

答案 0 :(得分:2)

好吧,我想我找到了解决方案。我只需要找到特定呼叫的FQCN,它就是

Symfony\Bridge\Twig\Extension\FormExtension

所以,添加

use Symfony\Bridge\Twig\Extension\FormExtension;

并替换

$this->get('twig')->getextension('form')

$this->get('twig')->getextension(FormExtension::class)

解决了这个问题。

我认为应该有一个更具体的指导,说明要更换的内容和每个案例的替代品。

问候。

PD:我正在试图找出如何将其标记为已解决,但也许我不允许这样做。