Django-icanhaz is een templatetag voor eenvoudiger integratie van ICanHaz.js JavaScript sjablonen met Django templates.
installatie
Installeer uit PyPI met pip:
pip django-icanhaz installeren
of krijgt het in-ontwikkeling versie:
pip installeren django-icanhaz == dev
Gebruik
- Voeg "icanhaz" om uw INSTALLED_APPS setting.
- Stel de ICANHAZ_DIR instelling om het volledige (absolute) pad naar een map waar u uw ICanHaz templates zal slaan.
- {% Belasting icanhaz%} en gebruik {% icanhaz "templatename"%} in uw Django templates om veilig te verankeren de ICanHaz.js template op ICANHAZ_DIR / templatename.html in uw Django template, automatisch verpakt in, klaar voor ich.templatename ( {...}) in uw JavaScript.
django-icanhaz niet ICanHaz.js bundelen of bieden geen JavaScript utilities; het gewoon helpt u eenvoudig insluiten de sjablonen in uw HTML. Inclusief ICanHaz.js in statische activa van uw project en gebruiken in uw JS zoals gebruikelijk.
Wijsbegeerte
De botsing tussen de 'gebruik van {{en}} als template variabele markers en ICanHaz.js' Django templates gebruik van dezelfde heeft een scala van oplossingen voortgebracht. Een oplossing vervangt gewoon [[en]] met {{en}} in een icanhaz template tag; een ander maakt een dappere poging om letterlijke tekst te reconstrueren binnen een brok van een Django template nadat het is al gemangeld door de Django template tokenizer.
Ik geef de voorkeur aan mijn JavaScript sjablonen in aparte bestanden in een speciale map te houden hoe dan ook, om verwarring tussen de server-side en client-side template te voorkomen. Dus mijn bijdrage aan de reeks van oplossingen is in wezen slechts een "include" tag die vermijdt het ontleden van de opgenomen bestand als een Django template (en voor het gemak, wikkelt het automatisch in het script tag die ICanHaz.js verwacht om het te vinden in).
Geniet
Wat is nieuw in deze release:
- Made-template vinden van meer flexibel: ICANHAZ_DIR is nu ICANHAZ_DIRS (een lijst ); toegevoegd ICANHAZ_FINDERS, ICANHAZ_APP_DIRNAMES, en vinden van sjablonen in geïnstalleerde apps.
Eisen
- Python
- Django
Reacties niet gevonden