2015-04-17 1 views
3

Je commence par Django et je fais des choses. Je veux garder les fichiers html propres, sans blocs <script>. Est-ce possible, même si ma partie utilise des blocs {% url %}?Tout déplacer dans un fichier séparé en Django

Exemple:

page.html

<div> 
<h1> My home url is: </h1> 
<div id="js-tag" ></div> 
</div> 
<script> 
$(function(){ 
    $('#js-tag').html("{% url 'home' %}") 
}); 
</script> 

Ce que je veux est supprimer ce et placez-le sur un fichier js séparé et simplement importer page.html

+0

Que voulez-vous dire par « sans

1

Vous pouvez utiliser django-js-reverse pour pouvoir utiliser les modèles d'URL nommés dans les fichiers js. Vous pouvez également utiliser l'application staticfiles pour gérer vos ressources statiques dans Django.

Cela vous permettra d'inclure vos fichiers js ainsi:

{% load static %} {# Only load static once at the top of your file #} 
<script src="{% static 'path/to/js/in/staticfiles.js' %}"></script> 

Et dans les js fichier, vous pouvez utiliser:

$('#js-tag').html(Urls.home());