我正在将资产从PNG更改为SVG,但是我很难将这些SVG包含在我的Twig模板中。
我试图像这样包含SVG:
{{ source('/assets/img/crmpicco-horizontal-logo.svg') }}
但是,这会导致以下错误:
无法找到模板" /assets/img/crmpicco-horizontal-logo.svg" (调查: /库/ Web服务器/文件/ crmpicco / symfony中/应用/资源/视图, /库/ Web服务器/文档/ crmpicco / symfony的/供应商/ symfony的/ symfony的/ SRC / Symfony的/网桥/枝条/资源/视图/表格)。
为什么我不能将此SVG包含在与其他资产相同的目录中?具体来说,我有兴趣了解为什么SVG不能作为Assetic的资产对待。
答案 0 :(得分:1)
您必须使用twig扩展名crmpicco-horizontal-logo.svg.twig
重命名svg文件并执行此操作:
{% include ":svg:crmpicco-horizontal-logo.svg.twig" %}
此示例中的文件夹svg
位于app / Ressources / views中
答案 1 :(得分:0)
这是我使用的解决方案(带有Symfony 4和Webpack Encore的Twig):
twig:
paths:
"%kernel.project_dir%/public": public_path
{{ source('@public_path'~asset('build/images/your_file.svg')) }}