Seite 1 von 1

verscheidene svg mit include einfügen

Verfasst: Donnerstag 28. Juli 2022, 16:33
von Pitwheazle
Hallo Leute,
Hilfen zu meinem Projekt suche ich normalerweise unter viewtopic.php?t=53873

Jetzt habe ich aber etwas nicht so spezifisches:

Für meinen "Rechentrainer" (siehe oben) muss ich viele, sehr unterschiedliche Grafiken einbinden. Diese erstelle ich mit svg und binde sie mit

Code: Alles auswählen

 {% if grafik.name %}
        {% if "zahlenstrahl" in grafik.name %}
            {% include "svg/zahlenstrahl.svg" %} 
        {% elif "parallele" in grafik.name %}
            {% include "svg/parallele.svg" %} 
        {% elif "geometrie" in grafik.name %}
            {% include "svg/geometrie.svg" %}                   
        {% endif %}
    {% endif %}
in mein Template ein. Es werden aber sehr viele Grafiken werden und ich hätte das gerne kürzer - da kommen noch viele svg Dateien dazu und die Liste wird wohl ziemlich lang werden.
Geht das nicht einfacher mit

Code: Alles auswählen

 {% include "svg/{%grafik.name%}" %}.svg 
... oder so?

Re: verscheidene svg mit include einfügen

Verfasst: Donnerstag 28. Juli 2022, 18:40
von noisefloor
Hallo,

das steht doch sogar explizit in der Django-Doku, wie das geht: https://docs.djangoproject.com/en/4.0/r ... s/#include

Warum bindest du die SVG-Dateien nicht über das HTML img-Tag ein?

Gruß, noisefloor

Re: verscheidene svg mit include einfügen

Verfasst: Donnerstag 28. Juli 2022, 21:30
von Pitwheazle
Das habe ich sogar mal gelesen. Anscheinend begreife ich es aber nicht. Wahrscheinlich liegt es am Ordner und der Endung, von denen ich nicht weiß, wie ich sie übergebe. Es wäre schön, wenn du mir da auf die Sprünge helfen könntest.
Also der Code

Code: Alles auswählen

{% include "svg/zahlenstrahl.svg" %} 
ruft die richtige Datei auf. Diese ist im Template Ordner im Unterordner svg. In grafik.name steht "zahlenstrahl". Wahrscheinlich klappt das bei mir nicht, weil ich nicht weiß, wie ich das "svg/" am Anfang und das ".svg" am Ende zu "grafik.name" dazufüge.

Re: verscheidene svg mit include einfügen

Verfasst: Freitag 29. Juli 2022, 05:31
von noisefloor
Hallo,

was spricht denn dagegen, „svg/irgendwas.svg“ der include-Direktive als Variable mitzugeben, anstatt diese in include erst zusammenzubauen? Wenn Verzeichnis und. Dateisuffix hardcoded im Quellcode sind, dann ist es doch egal, wo das steht.

Gruß, noisefloor