Modifications entre les versions 6 et 7
Version 6 à la date du 2011-08-24 15:27:12
Taille: 4015
Commentaire:
Version 7 à la date du 2011-08-24 20:00:18
Taille: 4022
Commentaire:
Texte supprimé. Texte ajouté.
Ligne 53: Ligne 53:
  * {{{ cd semainetech }}}   * {{{ cd semainetech_django }}}

SemaineTechAUF : Django

ATTENTION : cet atelier requiert une préparation préalable, voir la section Pré-requis.
(à effectuer au moins 30 min avant le début de la présentation)

Présentateur(s)

  • Olivier Larchevêque

Format

C'est un atelier plutôt participatif, le code source étaye la présentation des concepts de bases. (10min) Ensuite, on commence tout de suite dans la production, pour ajouter des nouvelles fonctionnalités à ce projet. (30min) La communication sera faite à travers le salon jabber.

Description détaillée

Cet atelier porte sur l'introduction du framework Web Django reposant sur Python. C'est ce framework qui est utilisé pour développer les applicatifs Web de l'AUF.

Une première partie, un peu plus théorique, présente les concepts généraux d'un framework Web, notamment le modèle MVC. Ces principes seront illustrés par le code source d'un mini-projet.

Le but de l'atelier est de construire une application Django qui offre une plateforme de support ; cela permettra dans un projet Django, d'offrir une FAQ et des fichiers d'aides en ligne. C'est un projet concrêt et il l'idée m'est venue d'un ticket qui traîne depuis longtemps : https://redmine.auf.org/issues/1489.

Le projet disposera déjà des fonctionnalités pour gérer la FAQ (création des questions/réponses et présentation sur le portail).

Vous aurez à construire améliorer ce module pour qu'il puisse gérer des ressources sous forme de fichiers :

  • Vous aller créer un nouveau type de contenu
  • Vous aller créer une administration Django pour gérer ce type de contenu
  • Vous aller intégrer dans le portail, la liste des ressources

Les étapes seront accompagnées des codes sources, et expliquées dans le salon de discussion.

Pré-requis

  • Un poste client AUF, avec Python >= 2.6

  • Avoir les droits d'administrations sur sa machine
  • Disposer git (apt-get install git-core)
  • Déployer le projet sur sa machine personnelle
    •  git clone git://git.auf.org/semainetech_django.git 

    •  cd semainetech_django 

    •  python bootstrap.py 

    •  bin/buildout -c devel.cfg 

    • optionnel : modifier le fichier project/conf.py si vous voulez une base de donnée MySQL
      • (si vous choisissez cette option, vous devrez installer  apt-get install python-mysqldb 

    •  bin/django syncdb  (créer un compte admin)

    •  bin/django migrate 

  • S'assurer d'avoir un projet fonctionnel avant de commencer l'atelier
    •  bin/django runserver 

    • Ouvrer Firefox et consulter http://127.0.0.1:8000 et vous devez voir la page de démo de la charte graphique

    • Aller ensuite sur http://127.0.0.1:8000/admin et connecter-vous avec le compte admin crée précedemment

    • Si tout est OK, CRTL+C pour arrêter le serveur, autrement poker moi sur le salon @tech.

  • Optionnel : regarder le livre Django en ligne http://www.djangobook.com/en/2.0 pour appréhender

les notions, mais elles seront abordées au début de l'atelier.

Connaissances requises

  • Programmation objet
  • Python

Environnement technique

  • Chacun disposera de son propre environnement
  • Ubuntu (plus facile si on a tous le même système)

Support(s) de présentation

Date et heure de passage

  • Le 29 Août 2011 à 13h00 TU
  • Le 1er Septembre à 13h00 TU

Durée prévue: 45 minutes de présentations (max) + 15 minutes de questions

Ressources

Archives des conversations

Projet/SemaineTech/2011/Ateliers/Django (dernière édition le 2012-08-02 19:17:32 par VictorBruneau)