119Close121
flankerOn the 2014-05-31 at 11:46pm
Je préfère largement la méthode Django, du coup happy Tu écris des classes (qui doivent hériter de models.Model) dont les attributs seront les colonnes des tables.
from django.db import models class Poll(models.Model): question = models.CharField(max_length=200) pub_date = models.DateTimeField('date published') class Choice(models.Model): poll = models.ForeignKey(Poll) choice_text = models.CharField(max_length=200) votes = models.IntegerField(default=0, min_value=0)
Là, on fait deux tables, dont la seconde aura une référence à la première. Tu n'as rien de plus à faire (et surtout pas à créer les tables, Django s'en charge pour toi via une commande), il n'y a aucune ambiguïté et c'est utilisable immédiatement quelque soit le moteur SQL choisi. Ça permet également d'avoir pas mal de garanties sur les données (genre le nombre de votes ne sera jamais négatif), générer plusieurs colonnes avec un seul champ, …

source