- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
在使用 Silex 时将自定义过滤器连接到 Twig 的正确方法是什么,但保持现有 twig.options
不变?
这就是我的意思。我有以下代码:
$app->register(new Silex\Provider\TwigServiceProvider(), array(
'twig.path' => dirname(__FILE__).'/view',
'twig.class_path' => dirname(__FILE__).'/vendor/twig/lib',
'twig.options' => array('cache'=>'folder/twig')
));
function test() {
return 'yay';
}
$app['twig']->addFilter('test',new \Twig_Filter_Function('test'));
如果我按原样运行该代码,过滤器将不起作用。
相反,Twig 返回一个无限缓存版本的 PREVIOUS REQUEST(即使我清除缓存内容 - 我猜这是因为缓存被存储在别处,因为我正在覆盖 twig.options
...不确定)。
但是,如果我放弃以下行:
'twig.options' => array('cache'=>'folder/twig')
...然后一切正常。
我怎样才能让这两个玩得很好?即保留缓存并添加自定义过滤器?
谢谢!
最佳答案
您应该创建一个 Twig 扩展并在那里添加您的过滤器。
#src/Insolis/Twig/InsolisExtension.php (snippet)
<?php
namespace Insolis\Twig;
class InsolisExtension extends \Twig_Extension
{
public function getName() {
return "insolis";
}
public function getFilters() {
return array(
"test" => new \Twig_Filter_Method($this, "test"),
);
}
public function test($input) {
return "yay";
}
}
如何注册:
#app/bootstrap.php
$app["twig"] = $app->share($app->extend("twig", function (\Twig_Environment $twig, Silex\Application $app) {
$twig->addExtension(new Insolis\Twig\InsolisExtension($app));
return $twig;
}));
关于php - 使用 Silex 的 Twig addFilter?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9504309/
我正在将 jetty 7 迁移到 jetty 8, 我收到此错误: no suitable method found for addFilter(Class,String,int) servletCo
我想知道 Display 类中的 addFilter 和 addListener 方法在概念上有什么区别? 最佳答案 我假设您指的是org.eclipse.swt.widgets.Display,如果
我正在创建一个基于 REST 的 Web 应用程序,以 AngularJS 作为前端,以 REST 为基础的后端(使用 Spring 4 )。我遵循此处找到的基于代码的配置方法:WebApplicat
在使用 Silex 时将自定义过滤器连接到 Twig 的正确方法是什么,但保持现有 twig.options 不变? 这就是我的意思。我有以下代码: $app->register(new Silex\
我需要一些帮助来清理 Zend_Form 并向元素添加过滤器。现在我的印象是,当您向表单添加过滤器时,发布表单时,过滤器将作为 Controller 中调度的一部分执行。 然而,当我测试我的表单时,令
在尝试将 spring 应用程序转换为 springboot 时,我在尝试启动应用程序时遇到以下错误: java.util.concurrent.ExecutionException: org.apa
我想要一些复合范围的键盘快捷键。有问题的复合 Material 位于选项卡文件夹中。我有一个小函数,它遍历我的组合的所有子项并为每个子项添加一个 KeyboardAdapter。 我遇到的问题是,当我
带有/login 的 URL 模式应该经过 LoginFilter,其中验证用户 ID 和密码 - 工作正常 带有/users/register 的 URL 模式不应通过任何文件管理器,但它始终通过
我的任务是防止addFilter()使用新的 Gutenberg API 而不是任何 WP PHP 在某些自定义帖子类型上运行。它目前已输入 editor.PostFeaturedImage钩子(Ho
通常我会添加 org.springframework.web.filter.DelegatingFilterProxy将这样的片段添加到 web.xml 中: springSecurityF
我已经在 tomcat 7.0 中部署了 web 项目(maven)。它曾经部署运行良好。但不知何故它不断给出错误 java.lang.NoSuchMethodException: org.apach
我正在我的 express app.js 文件中初始化 nunjucks,并在其中注册一个自定义的 addfilter 函数同一个文件就好了: // get needed packages con
我是一名优秀的程序员,十分优秀!