我们正在使用 Symfony2 构建一个新站点,Assetic 在资源管理方面看起来非常有前景,特别是在自动组合和处理所有 js/css 文件方面。
我们将拥有一些在整个站点范围内使用的资源,以及一些特定于特定页面的资源。我们还将对模板使用三层继承方法。
有没有办法结合这两个概念,即在继承的模板中自动添加额外的资源,以便它们都作为单个资源输出?
最佳答案
不幸的是,你不能:(
您无法覆盖 Assets 标签以添加更多 Assets 。但是,您可以执行以下操作:
{% block stylesheets %}
{% stylesheets 'your_assets_here' %}
<link rel="stylesheet" href="{{ asset_url }}" />
{% endstylesheets %}
{% endblock %}
然后,当您扩展模板时:
{% block stylesheets %}
{% stylesheets 'your_old_assets_here' 'your_new_assets_here' %}
<link rel="stylesheet" href="{{ asset_url }}" />
{% endstylesheets %}
{% endblock %}
在覆盖块中,您可以使用
parent()
包含父块,但是您将有 2 个链接:您不能将旧的 Assets 标签与新的标签结合起来。但是,您可以制作一个 twig 宏,用您的旧 Assets 输出 {% stylesheets %} Assets 标签,并且作为输入,它将包含新 Assets 位置。
更多信息 here .
关于templates - 跨继承模板组合 Assetic 资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6958970/