Django : Frontend : interfaces publiques d'un site


INTRODUCTION


PARTIE 1 : RAPPELS ET AMORCE DU PROJET

Rappels

Amorce du projet

  1. Prendre ces sources avec jeu de données (recommandé):

  2. ou repartir du code du projet carto de l'atelier Backend si vous l'avez suivi avant

  3. ou partir à zéro en codant le projet :
    • django-admin.py startproject carto
      cd carto
      python manage.py startapp annuaire
    • coder les modèles de l'app annuaire : annuaire/models.py :
      • from django.db import models
        
        class Etablissement(models.Model):
            def __unicode__(self):
                return self.nom
        
        class Personne(models.Model):
            def __unicode__(self):
                return self.nom
    • activer l'admin dans urls.py :
      • # ...
        
        from django.contrib import admin
        admin.autodiscover()
        
        urlpatterns = patterns('',
            # ...
            url(r'^admin/', include(admin.site.urls)),
        )
    • associer les modèles de l'app annuaire à l'admin : créer annuaire/admin.py :
      • from django.contrib import admin
        from annuaire.models import *
        
        admin.site.register(Etablissement)
        admin.site.register(Personne)
    • configurer le projet dans settings.py :
      • DATABASES = {
            'default': {
                'ENGINE': 'django.db.backends.sqlite3', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
                'NAME': 'carto.db',                      # Or path to database file if using sqlite3.
                 # ...
            }
        }
        
        INSTALLED_APPS = (
            # ...
            'annuaire',
            'django.contrib.admin',
            # ...
        )
    • créer les tables dans la DB
      • python manage.py syncdb
    • saisir un jeu de données dans l'admin : http://127.0.0.1:8000


PARTIE 2 : FRONTEND : PRÉSENTER LES DONNÉES

PARTIE 3 : PROJET CARTO PIMPÉ

Télécharger les sources finales du projet boosté : sources finales sources.tar.gz

Boosté? Quoi de neuf?

Héritage de templates

Fichiers statiques : CSS, images et js

https://docs.djangoproject.com/en/1.3/howto/static-files/

Connexion du user

URL avec paramètres

À faire : booster Admin : ModelAdmin

Charger données initiales : fixtures

https://docs.djangoproject.com/en/1.3/ref/django-admin/

PARTIE 4 : HANDS-ON : CRÉER L'APPLICATION FORMATION POUR LE PROJET RÉPERTOIRE

Ajouter modèle Formation

Autre exercice : durée d'une Formation

CONCLUSION : POUR CONTINUER