2011-08-14 2 views
1

Je suis nouveau à Django et j'obtenir quelques difficultés à mettre en œuvre ce modèle dans Django:Comment implémenter ce modèle dans Django?

enter image description here

Jusqu'à présent je le modèle de travail sans la table « Positions », et ressemble à ceci:

from django.db import models 
import datetime 

class Category(models.Model): 
    n_category = models.CharField(max_length=100) 

class Directory(models.Model): 
    website_name = models.CharField(max_length=200) 
    website_url = models.URLField() 
    categories = models.ManyToManyField(Category) 

Ma question est, Comment puis-je ajouter le tableau "Positions" à ce modèle?

Veuillez me donner un indice.

Cordialement.

Répondre

3

Créer un modèle Position qui a ForeignKeys à Categories et Directory et toutes les autres données nécessaires. Ensuite, utilisez l'argument through pour ManyToManyField. Ceci est décrit dans le Django documentation

Exemple (qui, si elles ne l'ont pas testé):

class Position(models.Model): 
    website_postiton = models.IntegerField() 
    category = models.ForeignKey('Category') 
    directory = models.ForeignKey('Directory') 

class Category(models.Model): 
    n_category = models.CharField(max_length=100) 

class Directory(models.Model): 
    website_name = models.CharField(max_length=200) 
    website_url = models.URLField() 
    categories = models.ManyToManyField(Category, through=Position) 
+0

Great! C'est exactement ce dont j'ai besoin! Merci de votre aide –

Questions connexes