【发布时间】:2017-12-21 22:57:39
【问题描述】:
我正在运行 drupal 8、composer 和 npm 来执行 gulp 任务。
当我运行 npm start.. 我的任务管理器时:我得到以下堆栈跟踪:
Fatal error: Uncaught exception 'Twig_Error_Syntax' with message 'Unknown "render" filter.' in /web/project/web/themes/emulsify/components/_patterns/04-templates/basic-page/_basic_page.twig:26
Stack trace:
#0 /web/project/web/themes/emulsify/pattern-lab/vendor/twig/twig/lib/Twig/ExpressionParser.php(481): Twig_ExpressionParser->getFilterNodeClass('render', 26)
#1 /web/project/web/themes/project_theme/pattern-lab/vendor/twig/twig/lib/Twig/ExpressionParser.php(466): Twig_ExpressionParser->parseFilterExpressionRaw(Object(Twig_Node_Expression_Name))
#2 /web/project/web/themes/project_theme/pattern-lab/vendor/twig/twig/lib/Twig/ExpressionParser.php(320): Twig_ExpressionParser->parseFilterExpression(Object(Twig_Node_Expression_Name))
#3 /web/project/web/themes/project_theme/pattern-lab/vendor/twig/twig/lib/Twig/ExpressionParser.php(212): Twig_ExpressionParser->parsePostfixExpression(Object(Twig_Node_Expression_Name))
#4 /web/project in /web/project/web/themes/project_theme/components/_patterns/04-templates/basic-page/_basic_page.twig on line 26
我查看了通过 composer 安装 twig-bridge / symfony twig,但我似乎无法摆脱错误消息。
我只是放弃使用树枝过滤器“渲染”吗?
更新:17 年 8 月 14 日
在尝试使用 Drupal 8 的 twig_tweak 模块提供的 drupal_block 函数时,我也遇到了同样的问题。
【问题讨论】:
-
似乎
render是由drupal 本身添加的Twig_Filter。所以你需要找出为什么filter在你的安装中不可用。 source -
您是否尝试过在 Drupal 堆栈交换上按照此问题中概述的步骤进行操作? drupal.stackexchange.com/questions/184184/…
-
我可能有点晚了,但是您尝试过 Bamboo Twig 模块吗?您可以使用
{{ bamboo_render_block('my_custom_block') }}渲染您自己的块或使用实体渲染器{{ bamboo_render_entity('block', 'my_theme_messages') }}渲染系统块。 drupal.org/project/bamboo_twig -
npm start是否运行 gulp 任务?如果是这样,请在此处发布 Gulpfile。 -
请看一下_basic_page.twig的来源
标签: php node.js symfony twig drupal-8