Django-fr

Forum

  • Accueil
  • » Django-fr
  • » Besoin d'explication sur les ForeignKey ManyToMany et OneToMany

#1 12-07-2012 21:22:03

Djok
Membre
Inscription : 12-07-2012
Messages : 26

Besoin d'explication sur les ForeignKey ManyToMany et OneToMany

Bonjour à tous,

Je débute dans l'apprentissage de Django et j'aurais besoin de vos lumière sur un point de la documentation traitant des modèles :

Doc a écrit :

If you need to create a relationship on a model that has not yet been defined, you can use the name of the model, rather than the model object itself:

Que veux dire un modèle pas encore défini ? S'agit-il d'une classe qui n'a pas été encore créée ? J'ai essayé de déclarer une classe avec un ManyToMany vers une classe que je n'avais pas encore créé mais quand je fais "manage.py syncdb" j'obtiens une erreur comme quoi la classe mentionné n'existe pas. ça ne métonne pas ceci dit.

Quelle est la différence entre  "the name of the model" et  "the model object itself" ?

Je comprends tout à fait cependant qu'il faille créé tous ces modèles avant d'écrire les tables SQL, mais cette phrase "a model that has not yet been defined" laisse penser le contraire. Je dois sans doute pas avoir compris ce que cela voulait dire. Pourriez vous m'éclairer svp ?


Merci pour vos réponses.

Hors ligne

#2 13-07-2012 12:13:15

ksamuel
Modérateur
Inscription : 22-06-2012
Messages : 40
Site Web

Re : Besoin d'explication sur les ForeignKey ManyToMany et OneToMany

Au lieu de passer la classe, on passe une chaîne de caractère avec le
nom de la classe. Django se débrouille pour ramapper tout ça derrière.
Par exemple:

class Bidule(models.Model):
   # truc = models.ManyToMany(Truc)
   truc = models.ManyToMany("Truc")

class Truc(models.Model):
    pass

Il faut que le modèle soit défini quelque part. Ceci aide uniquement si
le model n'est pas défini juste avant, et que donc la classe n'est pas
disponible. Cela fonctionne aussi bien avec ManyToMany qu'avec les
ForeignKey toutes simples.

Le jeu. 12 juil. 2012 22:22:03 CEST, Mr Djok a écrit :
> Bonjour à tous,
>
> Je débute dans l'apprentissage de Django et j'aurais besoin de vos
> lumière sur un point de la documentation traitant des modèles :
> [quote=Doc]If you need to create a relationship on a model that has not
> yet been defined, you can use the name of the model, rather than the model
> object itself:[/quote]
> Que veux dire un modèle pas encore défini ? S'agit-il d'une classe qui
> n'a pas été encore créée ? J'ai essayé de déclarer une classe avec un
> ManyToMany vers une classe que je n'avais pas encore créé mais quand je
> fais "manage.py syncdb" j'obtiens une erreur comme quoi la classe
> mentionné n'existe pas. ça ne métonne pas ceci dit.
>
> Quelle est la différence entre  "the name of the model" et  "the model
> object itself" ?
>
> Je comprends tout à fait cependant qu'il faille créé tous ces modèles
> avant d'écrire les tables SQL, mais cette phrase "a model that has not yet
> been defined" laisse penser le contraire. Je dois sans doute pas avoir
> compris ce que cela voulait dire. Pourriez vous m'éclairer svp ?
>
>
> Merci pour vos réponses.
> _______________________________________________
> django mailing list
> django _AT_ lists.afpy.org
> http://lists.afpy.org/mailman/listinfo/django

Hors ligne

#3 13-07-2012 19:33:16

Djok
Membre
Inscription : 12-07-2012
Messages : 26

Re : Besoin d'explication sur les ForeignKey ManyToMany et OneToMany

Ok je vois... Merci pour ton aide

Hors ligne

  • Accueil
  • » Django-fr
  • » Besoin d'explication sur les ForeignKey ManyToMany et OneToMany

Pied de page des forums