====== Modèle de template de Django ======
===== Interface d'administration =====
Les templates d'admin sont situés dans //django/contrib/admin/templates/admin///. Pour les personnaliser :
* Dans le répertoire du projet, créer un dossier templates puis à l'intérieur un dossier admin ou simplement sous Unix / Linux
mkdir -p templates/admin
* Dans //settings.py// du projet, ajouter le chemin absolu vers ce répertoire dans la variable de configuration TEMPLATE_DIRS
TEMPLATE_DIRS = (
'/chemin/absolu/vers/templates',
)
* Depuis //django/contrib/admin/templates/admin// recopier les templates à personnaliser vers templates/admin
===== Vues =====
Les vues sont responsables de deux choses :
* renvoyer un objet [[https://docs.djangoproject.com/en/1.5/ref/request-response/#django.http.HttpResponse|HttpResponse]] contenant la page demandée
* **OU** renvoyer une exception [[https://docs.djangoproject.com/en/1.5/topics/http/views/#django.http.Http404|Http404]].
==== Définition de base et configuration des URLs ====
* définition des vues dans monApplication/views.py. Exemple :
from django.http import HttpResponse
def index(request):
return HttpResponse("Hello, world")
* configuration des urls dans monApplication/urls.py. Exemple :
from django.conf.urls import patterns, url
from monApplication import views
urlpatterns = patterns('',
url(r'^$', views.index, name='index')
)
* mappage dans le projet via monProjet/urls.py. Exemple
urlpatterns = patterns('',
url(r'^monApplication/', include('monApplication.urls')),
//...
url(r'^admin/', include(admin.site.urls)),
)
==== Définitions avancées ====
* Vue avec arguments
def nouvelleVue(request, argument):
return HttpResponse("Vous êtes sur la vue %s." % argument)