django 1.5 – Come usare le variabili all’interno del tag statico

Attualmente sto migrando tutti i riferimenti di file statici nel mio progetto al nuovo tag {% static%} introdotto da django 1.5, ma sto riscontrando un problema, in alcuni punti utilizzo variabili per ottenere il contenuto. Con il nuovo tag non posso, c’è un modo per risolvere questo?

Codice corrente:

{% trans 'Language' %} 

Cosa dovrebbe essere (questo non funziona):

 {% trans 'Language' %} 

Dovresti essere in grado di concatenare stringhe con il filtro modello di add :

 {% with 'assets/flags/'|add:request.LANGUAGE_CODE|add:'.gif' as image_static %} {% static image_static %} {% endwith %} 

Quello che stai cercando di fare non funziona con il tag del template static perché prende solo una stringa o una variabile:

 {% static "myapp/css/base.css" %} {% static variable_with_path %} {% static "myapp/css/base.css" as admin_base_css %} {% static variable_with_path as varname %} 

un modo più semplice è impostare {% static%} come variabile dall’inizio del codice HTML in modo che possiamo usarlo nel modo che vogliamo.

 {% load static %} {% static "" as baseUrl %}  

Ho fatto in modo che funzionasse usando una stringa vuota per il percorso statico e quindi utilizzando le mie variabili nella loro sezione, in questo modo:

 Name 

@rounin, puoi, almeno, usare

 {% get_static_prefix %} 

che verrà caricato quando {% carica static%}. È solo più naturale allora {% static ”%} 🙂

Per quello che vale, penso che questo sia il modo più semplice:

  

Questa è una vecchia domanda e non sono sicuro che questo metodo possa essere fatto allora, ma ora, in Django 2.0, questo sembra funzionare bene per me.