Symfony 2-树枝延伸
我正在尝试使用我的一项服务进行树枝扩展 我得到的错误是: 未捕获异常 'Symfony\Component\DependencyInjection\Exception\InvalidArgumentException' 对于“消息”,一个“标记”条目必须是服务的数组 “标记格式化程序\u扩展” My services.yml:Symfony 2-树枝延伸,symfony,twig,Symfony,Twig,我正在尝试使用我的一项服务进行树枝扩展 我得到的错误是: 未捕获异常 'Symfony\Component\DependencyInjection\Exception\InvalidArgumentException' 对于“消息”,一个“标记”条目必须是服务的数组 “标记格式化程序\u扩展” My services.yml: nobookchoosen_service: class: AppBundle\Service\nobookchoosenService argument
nobookchoosen_service:
class: AppBundle\Service\nobookchoosenService
arguments:
- @request_stack
- @router
logger_service:
class: AppBundle\Service\loggerService
arguments: ["@doctrine.orm.entity_manager", "@security.context"]
tags_service:
class: AppBundle\Service\tagsService
arguments: [%tags%]
documents_service:
class: AppBundle\Service\documentsService
arguments: ["@tags_service"]
tagformater_extension:
class: AppBundle\Twig\tagformaterExtension
arguments: ["@tags_service"]
public: false
tags:
{ name: twig.extension }
和扩展文件:
<?php
namespace AppBundle\Twig;
class tagformaterExtension extends \Twig_Extension
{
protected $tagsService;
public function __construct($tagsService)
{
$this->tagsService = $tagsService
}
public function getFilters()
{
return array(
new \Twig_SimpleFilter('tag', array($this, 'tagFilter')),
);
}
public function tagFilter($tagname)
{
$label = "label label-default";
if(array_key_exists($tagname, $this->tagsConfigArray))
{
if($this->tagsConfigArray[$tag]['label']) $label = $this->tagsService->gettaglabel($tagname);
}
return "<SPAN CLASS=\"".$label."\">".$tagname."</A>";
}
public function getName()
{
return 'tagformater_extension';
}
}
标记必须是数组。只需在{name:…}
tagformater_extension:
class: AppBundle\Twig\tagformaterExtension
arguments: ["@tags_service"]
public: false
tags:
- { name: twig.extension }
标记必须是数组。只需在{name:…}
tagformater_extension:
class: AppBundle\Twig\tagformaterExtension
arguments: ["@tags_service"]
public: false
tags:
- { name: twig.extension }