2017-10-25 3 views
2

Ich ändere meine Vermögenswerte von PNGs zu SVGs, wo angemessen, aber ich habe schwer diese SVGs in meine Twig-Vorlagen.Einschließlich SVG in Twig Vorlage

Ich versuche, die SVG wie folgt enthalten:

{{ source('/assets/img/crmpicco-horizontal-logo.svg') }}

Dies führt jedoch zu dem folgenden Fehler:

Unable to find template "/assets/img/crmpicco-horizontal-logo.svg" (looked into: /Library/WebServer/Documents/crmpicco/symfony/app/Resources/views, /Library/WebServer/Documents/crmpicco/symfony/vendor/symfony/symfony/src/Symfony/Bridge/Twig/Resources/views/Form).

Warum kann ich nicht um diesen SVG in der gleichen Verzeichnis als meine anderen Vermögenswerte? Insbesondere möchte ich herausfinden, warum ein SVG nicht als Asset mit Assetic behandelt werden kann.

+0

Mögliches Duplikat [Zweig: Fügen externer Code aus einer SVG-Datei] (https://stackoverflow.com/questions/38261299/twig-include-external-code-from-an-svg-file) –

Antwort

1

Sie haben Ihre SVG-Datei mit einem Zweig Erweiterung umbenennen crmpicco-horizontal-logo.svg.twig und dies tun:

{% include ":svg:crmpicco-horizontal-logo.svg.twig" %} 

Der Ordner svg ist in app/Ressources/Ansichten in diesem Beispiel

+0

Danke, gibt es einen Grund, warum es nicht in der sitzen kann Dateisystem mit anderen Assets? – crmpicco

+0

Weil Sie 'include' verwenden und die' include' Zweigfunktion | tag nur mit Ressourcen in app/Ressourcen/Ansichten oder Bundles/Ressourcen/Ansichten verwendet werden kann. Aber ich weiß nicht, warum wir diese Lösung mit Symfony verwenden müssen. Bei meiner Seite, wenn sich die statische Integration vom Projekt unterscheidet, muss ich ein Skript erstellen, um SVG-Assets in anderen Ordnern zu kopieren/hinterlegen und die Dateien umzubenennen. Ich mag das nicht sehr, aber es funktioniert. –

+0

Ich finde das [Eine Vorlage einfügen, die sich im Web-Ordner befindet] (https://stackoverflow.com/questions/20848829/include-a-template-which-is-in- der-web-Ordner). Danke auch ich wusste nicht das war möglich :) –

Verwandte Themen