Tutos Django

Tag : django

Utilisation avancée de l'ORM de Django

Une fois que vous avez créé vos modèles, Django vous fournit une API d'abstraction de base de données vous permettant de créer, retrouver, mettre à jour ou supprimer vos objets.
Nous allons voir ensemble les principales méthodes de cette API.

Considérons ces modèles :

class Blog(models.Model):
    name = models.CharField(max_length=100)
    tagline = models.TextField()

    def __unicode__(self):
        return self.name

class Author(models.Model):
    name = models.CharField(max_length=50)
    email = models.EmailField()

    def __unicode__(self):
        return self.name

class Entry(models.Model):
    blog = models.ForeignKey(Blog)
    headline = models.CharField(max_length=255)
    body_text = models.TextField()
    pub_date = models.DateTimeField()
    mod_date ...
Continuer la lecture →

Django shortcuts - Raccourcis

Vous avez pu remarquer au cours des derniers tutoriaux que nous avons utilisé différentes façons de retourner de la donnée depuis notre contrôleur vers nos vues.
Par exemple dans le tutoriel sur les formulaires, nous avons utilisé le raccourci 'render_to_response' dans le contrôleur 'views.py' mais nous aurions pu utiliser d'autres raccourcis.

Rappelons d'abord comment un contrôleur le plus simple qu'il soit peut s'écrire :

from django.http import HttpResponse

def index(request):
    return HttpResponse("Hello, world.")

Nous faisons appel à la méthode HttpResponse du module http pour ensuite retourner une chaîne de caractère. Et nous ne ...

Continuer la lecture →

L'encapsulation des Templates

Comme tout bon framework MVC, Django gère l'héritage des templates et met donc en avant le principe DRY (Don't Repeat Yourself).
Nous allons voir quels tags nous permettent de gérer correctement une application, sans avoir à réécrire incessamment du code.
Pour cela, nous allons créer une nouvelle application que nous appèlerons 'myapp'.
Placez-vous dans votre projet et exécutez la commande (pour créer un projet, reportez-vous à ce tutoriel) : 

$ python manage.py startapp myapp

Positionnez-vous dans le dossier 'myapp' ainsi produit, et créez un répertoire templates ainsi que les fichiers 'skeleton.html', 'index.html', 'about.html', 'header.html', 'footer ...

Continuer la lecture →

Le langage de Templates - tag et filtres

Vous  aurez remarqué que django utilise un langage spécifique pour travailler avec les templates. La documentation officielle sur le langage de templates django peut être trouvée ici : The Django template language. Vous pouvez également trouver une version non officielle traduite en français ici (attention cependant, cela date d'aout 2006).

Premièrement, vous avez du remarquer que nous avons souvent utilisé les caractères {{ ... }} pour afficher une variable.
C'est en effet ces caractères qui vont nous permettre d'accéder à une variable, et mieux, si celle-ci est un objet, nous allons pouvoir accéder à ses attributs à l'aide du caractère ...

Continuer la lecture →

Inclusion CSS et Static Files

Incorporer des feuilles de styles en cascade autrement dit CSS dans un projet django 1.3.1 pourrait s'avérer difficile s'il on ne dispose pas des bonnes clefs de compréhension.

Car en effet, depuis la version 1.3, django utilise les STATIC_FILES pour servir des fichiers medias. Entendez fichiers medias, tout fichier qui sera publique, tels que les fichiers css, javascript, images, vidéos etc...

Il faut savoir que django n'est pas fait pour servir ces fichiers sur le même serveur où est hébergé la logique de votre code, car cela en réduit considérablement les performances. Comprenez qu ...

Continuer la lecture →

Les formulaires en Django

La création de formulaires avec Django est extrêmement simple et bourrée de fonctionnalités.

Vous pouvez générer des formulaires à partir de vos modèles ou bien les créer directement depuis des classes.

Passons tout de suite à la pratique, et mettons cela en place. Pour plus de propreté, nous allons créer une nouvelle application, que nous appellerons 'myform'.

$ python manage.py startapp myform

Et on n'oublie pas de renseigner notre application dans le fichier settings.py de notre projet :

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    # Uncomment the ...
Continuer la lecture →

Bien débuter avec Django

Nous utiliserons tout au long de ce blog la dernière version en cours stable de Django (à l'heure où je vous parle : 1.3.1).

La documentation actuelle de Django explique très bien comment l'installer et propose un tutorial de découverte en 4 étapes :

Documentation officielle <- alors OK c'est en anglais, mais la documentation est très très bien faite et permet d'apprendre correctement les bases de Django.
Une documentation en Français existe aussi mais elle couvre Django 1.1.1 et de légères différences sont présentes par rapport à la dernière version en cours. Étant donné ...

Continuer la lecture →

Bienvenue sur Tutos Django !

Bienvenue sur Tutos Django !

Bonjour à tous et bienvenue sur Tutos Django !

 

Ce Blog a pour ambition de vous faire découvrir Django au travers de différents tutoriaux mais également de voir ce qu'il est possible de faire niveau web 2.0 avec Django ! Ce qui inclut des plugins Javascript et l'utilisation d'AJAX ! Pour une expérience utilisateur toujours plus riche.

Pourquoi Django ?

Parce que c'est aujourd'hui un des meilleurs Framework Web existant et utilisant le langage python ! 

Django permet de réaliser très rapidement et simplement des applications Web et de facilement les maintenir !

Pourquoi ce blog ?

Il n'existe actuellement ...

Continuer la lecture →