django-template-fragments est une aide pour les modèles utilisés dans le cadre du client JavaScript.
Introduction
Souvent, lorsque vous utilisez un JavaScript côté client cadre (par exemple épine dorsale / braise / angulaire / wathever), vous aurez envie de petits modèles pour rendre votre page. Le problème commence quand:
- Vous voulez toujours être en mesure d'utiliser le moteur de template de Django
- Et que vous voulez un endroit frais pour définir vos petits modèles.
Ce sont les deux questions que cette application de Django tente de répondre. Il est également livré avec des fonctionnalités d'aide pour ce genre de modèles, comme les templatetags in extenso de django 1,5 dev code qui vous permet de définir une zone où django ne pourra pas interpréter tout pour éviter les conflits avec les langues de modèle comme mustache.js.
Avec elle, vous définissez tous vos petits modèles dans le même répertoire et vous serez en mesure d'y accéder dans les fragments JavaScript Object qui contient les (rendu par django) modèles.
Installation
De pip:
pip install-template-fragments de django
De setup.py:
git clone git: //github.com/Psycojoker/django-template-fragments.git
cd django-template-fragments
python setup.py install
Créer un répertoire où vous souhaitez stocker vos fragments, puis ajouter à votre FRAGMENTS_DIR settings.py, il doit être un chemin absolu.
Je aime à définir mon FRAGMENTS_DIR comme ceci:
os d'importation
PROJECT_PATH = os.path.abspath (os.path.split (__ __ fichier) [0])
SUBPROJECT_PATH = os.path.split (PROJECT_PATH) [0]
FRAGMENTS_DIR = os.path.join (SUBPROJECT_PATH, «fragments»)
Cela mettra à l'annuaire PROJECT_NAME / fragments (où votre settings.py est en project_name / project_name / settings.py).
Ensuite, écrire quelques petits extraits html dans cette dir.
Puis ajouter quelque chose comme ceci à votre urls.py
URL (r '^', include ('fragments.urls')),
Et quelque part dans votre modèle de base
Cela vous donnera un objet JavaScript de fragments contenant tous vos fragments, la clé est le nom du fichier du fragment sans l'extension.
Exemple: object_list.html sera accessible dans les fragments opposer comme ceci: fragments.object_list
Si vous mettez le fragment dans un sous-répertoire dans le FRAGMENTS_DIR, la clé sera le nom du fichier sans son extension rejoint par le chemin de sous-répertoire où les / sont remplacés par _.
Pas clair? Voici un exemple: le fichier FRAGMENTS_DIR / une / deux / three.html sera accessible au one_two_three clé.
soutien HamlPy
Si vous avez HamlPy installé et que votre nom de fragment se termine par .haml, django-template-fragments vont le prendre en compte et utiliser HamlPy pour générer le code HTML.
Balise Verbatim
Vous devez mettre fragments dans vos applications installées dans settings.py pour que cela fonctionne.
Je ai pris le code de la branche dev de Django 1.5 pour permettre l'utilisation des templatetags in extenso pour éviter les conflits entre modèle de django syntaxe et la syntaxe du langage de moteur de template (par exemple, la moustache).
Exemple:
{% De charge fragmente%}
{{}} Will_be_interpreted
{% Verbatim%}
{{}} Wont_be_interpredted
{% Endverbatim%}
Vous pouvez également choisir une balise de fermeture spécifique tel que décrit dans la documentation de django.
Exemple de la doc:
{% De charge fragmente%}
{% MyBlock verbatim%}
& Nbsp; Évitez modèle rendu via le {verbatim%%} {% endverbatim%} bloc.
{% Endverbatim myBlock%}
fichiers ignorés extensions
En django-template-fragments défaut ignore tous les fichiers qui se termine par un de ceux: .pyc .swo .swp ~
. Vous pouvez spécifier votre propre liste en définissant FRAGMENTS_IGNORED_FILE_TYPES dans votre settings.py
Exigences :
- Python
- Django
Commentaires non trouvées