所以我对Symfony2很新,我试图camelize在树枝模板中使用过滤器.但是,当我请求页面时,我收到一条错误消息,指出过滤器不存在:
过滤器"camelize"在:: base.html.twig中不存在
这是我的模板文件中的行:
{{'你好世界'| camelize}}
过滤器列在Twig的快速参考页面上.
我很困惑,Symfony2不支持所有twig的过滤器吗?似乎有不少遗失,为什么?如果它不支持它们,那么有没有办法添加缺少的?
提前致谢!
编辑好的,所以事实证明我是迟钝的,我需要记住检查我确实得到了正确的git项目.难怪我很困惑.谢谢回复!
Sam*_*nti 10
Symfony 2具有用于骆驼案例的标题过滤器
{{ entity.yourstring | title }}
Run Code Online (Sandbox Code Playgroud)
骆驼案你的字符串
您的链接指向GitHub上的分支,意味着原始项目的修改副本.原始项目是https://github.com/fabpot/Twig.
camelizeTwig中没有过滤器.这里有内置过滤器.您可以按照本教程编写自己的camilize过滤器(实际上很简单......):如何编写自定义的Twig扩展.
编辑:只是为了好玩,你可以这样写:
class MyTwigExtension extends Twig_Extension
{
public function getFilters()
{
return array(
'camelize' => new Twig_Filter_Method($this, 'camelizeFilter'),
);
}
public function camelizeFilter($value)
{
if(!is_string($value)) {
return $value;
}
$chunks = explode(' ', $value);
$ucfirsted = array_map(function($s) { return ucfirst($s); }, $chunks);
return implode('', $ucfirsted);
}
public function getName()
{
return 'my_twig_extension';
}
}
Run Code Online (Sandbox Code Playgroud)
请注意,这是一个快速而脏的过滤器!查看内置过滤器以了解最佳实践!
| 归档时间: |
|
| 查看次数: |
9349 次 |
| 最近记录: |