我正在尝试使用服务容器创建Twig Extension,但是我得到了"ClassNotFoundException"。
这里的例外:
ClassNotFoundException:试图从 中的全局命名空间 ''path''to''symfony-simple-blog''src''YagoQuinoy''SimpleBlogBundle''Twig''BlogExtension.php 第 11 行。您是否忘记了此类的使用语句?也许你 需要为以下项之一添加 use 语句: Symfony''Bundle''TwigBundle''DependencyInjection''TwigExtension
这里的代码:
树枝扩展:
namespace YagoQuinoy'SimpleBlogBundle'Twig;
/**
* Description of BlogExtension
*
* @author yagoquinoy@gmail.com
*/
class BlogExtension extends 'TwigExtension
{
public function getFilters() {
return array(new 'Twig_SimpleFilter('timeAgo', array($this, 'timeAgoFilter')));
}
public function timeAgoFilter() {
return 'yolo!';
}
public function getName() {
return 'blog_extension';
}
}
服务.yml
services:
yago_quinoy_simple_blog.twig.blog_extension:
class: YagoQuinoy'SimpleBlogBundle'Twig'BlogExtension
tags:
- { name: twig.extension }
编辑:已解决。
斯马伯 Twig_Extension不是树枝扩展, symfony.com/doc/current/cookbook/templating/twig_extension.html
您仍然可以通过在 composer.json 中修复您的 twig 版本来更新到 Symfony 4.4
,方法是运行composer require twig/twig ~2.0