Symfony2 Twig包括资产不起作用的标题

时间:2014-12-18 12:17:51

标签: php html symfony twig assetic

我试图将我的标题包含在另一个模板中,不扩展,就像这样

{% include '@Foo:Bar:_header.html.twig' %}

该标题,包含此

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="description" content="">
    <meta name="author" content="">
    <title>{{ site.name }}</title>

    {% block stylesheets %}
        {% stylesheets
            "@Foo/Resources/public/app.css"
        %}
            <link rel="stylesheet" href="{{ asset_url }}" />
        {% endstylesheets %}
    {% endblock stylesheets %}
</head>
<body>

没什么不寻常的,只是一些带有资产的css文件。

此行为会抛出此异常

  

在编译模板期间抛出了异常   (&#34;模板不支持&#34; bundle&#34;参数。&#34;)in   &#34; @富/酒吧/ _header.html.twig&#34;

嗯吗

如果不是将其{% include %}包括在内,而是扩展{% extends %}一切都运作良好。

为什么我要包含而不是扩展?我想创建新的块,并包含其他东西等。

这个问题还可以吗?这是他上班的方式吗?

2 个答案:

答案 0 :(得分:3)

傻傻的回答,傻问题。

修复是从include中删除@,我不知道为什么使用它。

{% include '@Foo:Bar:_header.html.twig' %} 无法正常工作

{% include 'Foo:Bar:_header.html.twig' %} 正在运作

答案 1 :(得分:0)

请参阅问题:https://github.com/symfony/AsseticBundle/issues/331

它声明要解决此问题,您应该将AsseticBundle更新为&#34; master-dev&#34;分支(此问题已在几天前修复,但尚未合并到Bundle的稳定版本中)