django-icanhaz är en templatetag för enklare integrering av ICanHaz.js JavaScript-mallar med Django mallar.
Installation
Installera från PyPI med pip:
PiP installera django-icanhaz
eller få i-utvecklingsversionen:
PiP installera django-icanhaz == dev
Användning
- Lägg till "icanhaz" till inställningen INSTALLED_APPS.
- Ställ ICANHAZ_DIR inställningen till fullo (absolut) sökvägen till en katalog där du lagrar dina ICanHaz mallar.
- {% Belastning icanhaz%} och använda {% icanhaz "templatename"%} i dina Django mallar för att på ett säkert sätt bädda in ICanHaz.js mall vid ICANHAZ_DIR / templatename.html i din Django mall, automatiskt insvept i, redo för ich.templatename ( {...}) i JavaScript.
django-icanhaz inte bunta ihop ICanHaz.js eller ge några JavaScript verktyg; det bara hjälper dig att enkelt bädda in mallarna i din HTML. Inkludera ICanHaz.js i ditt projekt statiska tillgångar och använda den i din JS som vanligt.
Filosofi
Kollisionen mellan Django mallar användning av {{och}} som mallvariabeln markörer och ICanHaz.js "användning av samma har gett upphov till en mängd olika lösningar. En lösning ersätter helt enkelt [[och]] med {{och}} inuti en icanhaz mall tag; annan gör ett tappert försök att rekonstruera ordagrant text i en bit av en Django mall efter det redan har manglas av Django mall tokenizer.
Jag föredrar att hålla mina JavaScript mallar i separata filer i en särskild katalog i alla fall, för att undvika förväxling mellan serversidan och klientsidan mall. Så mitt bidrag till de olika lösningar är i huvudsak bara en tagg "inkluderar" som undviker analysera den inkluderade filen som en Django mall (och för enkelhetens skull, sveper den automatiskt i skripttagg som ICanHaz.js förväntar sig att hitta det).
Njut
Vad är nytt i den här versionen:
- Made mall hitta mer flexibel: ICANHAZ_DIR är nu ICANHAZ_DIRS (en lista ); tillade ICANHAZ_FINDERS, ICANHAZ_APP_DIRNAMES, och konstaterande av mallar i installerade appar.
Krav :
- Python
- Django
Kommentarer hittades inte