【发布时间】:2016-08-09 03:35:47
【问题描述】:
当我调用我的自定义过滤器时,它失败了:
[Twig_Error_Syntax] Unknown "snake_case" filter in "controller/controller.php.twig" at line 86.
服务已注册:
services:
l91_sulu_backend.twig.converter.extension:
class: L91\Sulu\Bundle\BackendBundle\Twig\ConverterTwigExtension
tags:
- { name: twig.extension }
它在container:debug下列出
类如下所示:
<?php
namespace L91\Sulu\Bundle\BackendBundle\Twig;
class ConverterTwigExtension extends \Twig_Extension
{
/**
* {@inheritdoc}
*/
public function getFilters()
{
return [
new \Twig_SimpleFilter('snake_case', [$this, 'snakeCaseFilter']),
];
}
/**
* @param string $input
*
* @return string
*/
public function snakeCaseFilter($input)
{
return strrev($input); // just to test
}
/**
* {@inheritdoc}
*/
public function getName()
{
return 'l91_sulu_backend_converter';
}
}
还有twig:debug 列出我的snake_case 过滤器。
twig 文件由 symfony 命令调用的 Generator 渲染。
这里是过滤器的调用
'{{ translatePrefix }}.{{ column|snake_case }}',
【问题讨论】:
标签: symfony twig generator symfony-2.6 twig-extension