Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 重写包的模板继承_Php_Symfony_Symfony4_Symfony 3.4 - Fatal编程技术网

Php 重写包的模板继承

Php 重写包的模板继承,php,symfony,symfony4,symfony-3.4,Php,Symfony,Symfony4,Symfony 3.4,我正在使用symfony 3.4,但计划在将来更新4.0 所以我一步一步地减少包覆盖。(symfony 4中禁止使用) 现在我计划在TempletsDirectOly中使用模板覆盖 所以我把文件放在这里 /templates/bundles/applicationonatamediabundle/Form/media\u widgets.html 然后清除缓存 php应用程序/控制台缓存:清除 但是它不起作用 我的错误消息如下所示 Unable to find template "Applica

我正在使用symfony 3.4,但计划在将来更新4.0

所以我一步一步地减少包覆盖。(symfony 4中禁止使用)

现在我计划在TempletsDirectOly中使用模板覆盖

所以我把文件放在这里

/templates/bundles/applicationonatamediabundle/Form/media\u widgets.html

然后清除缓存

php应用程序/控制台缓存:清除

但是它不起作用

我的错误消息如下所示

Unable to find template "ApplicationSonataMediaBundle:Form:media_widgets.html.twig"
 (looked into: /Users/whitebear/CodingWorks/httproot/myapp/vendor/knplabs/knp-menu/src/Knp/Menu/Resources/views, 
 /Users/whitebear/CodingWorks/httproot/myapp/app/Resources/views, 
 /Users/whitebear/CodingWorks/httproot/myapp/templates, 
 /Users/whitebear/CodingWorks/httproot/myapp/vendor/symfony/symfony/src/Symfony/Bridge/Twig/Resources/views/Form).

下一步我应该在哪里检查???

您的错误消息表明,您有一个电话

$this->render('ApplicationSonataMediaBundle:Form:media_widgets.html.twig');
某处(加上参数)。不再使用该语法,而是使用:

$this->render('@ApplicationSonataMediaBundle/Form/media_widgets.html.twig');

如中所示(如果可以信任文档,则从symfony改为).

你为什么不把这个文件
/Users/whitebear/CodingWorks/httproot/myapp/templates
放在那里呢?我在sonata_media.yml-
'ApplicationSonataMediaBundle:Form:media_widgets.html.twig'中找到了代码
我把它改成了
'@applicationsonatamia/Form/media_widgets.html.twig'
。比它的工作。谢谢