Anthony Expert
Nombre de messages : 62 Age : 36 Localisation : Cholet FRANCE Date d'inscription : 06/12/2007
Status Perso: Soldat Faction: Fantassin Caste: Dragon
| Sujet: problème models avec les foreign key Mar 19 Aoû - 22:55 | |
| Je ne comprends pas pourquoi mon model ne passe pas: - Code:
-
# -*- coding: utf-8 -*- from django.db import models from miraemos.registration.models import Joueur
TYPE_JOUEUR=( (0,'tous'), (1,'soldat'), (2,'ingénieur') ) class BrancheMission: bg = models.IntegerField("borne gauche") bd = models.IntegerField("borne droite") nombreRequis = models.IntegerField("nombre de sous-mission requise pour finir la mission") ordre = models.BooleanField("sous-mission ordonnée ou non") class Mission: idBrancheFeuille = models.ForeignKey(BrancheMission, verbose_name="id de la branche") nom = models.CharField("nom", max_length=50) description = models.TextField("description", max_length=500) image = models.ImageField("image de la mission",upload_to='mission/vignette/') xprequise = models.IntegerField("expérience requise pour débloquer la mission") typeJoueur = models.IntegerField("type de joueur requis pour la mission",choices=TYPE_JOUEUR) def __unicode_(self): return u'%s' % self.nom
Avec le terminal qui va avec : - Code:
-
Traceback (most recent call last): File "manage.py", line 11, in <module> execute_manager(settings) File "/usr/lib/python2.5/site-packages/django/core/management/__init__.py", line 301, in execute_manager utility.execute() File "/usr/lib/python2.5/site-packages/django/core/management/__init__.py", line 248, in execute self.fetch_command(subcommand).run_from_argv(self.argv) File "/usr/lib/python2.5/site-packages/django/core/management/base.py", line 77, in run_from_argv self.execute(*args, **options.__dict__) File "/usr/lib/python2.5/site-packages/django/core/management/base.py", line 90, in execute self.validate() File "/usr/lib/python2.5/site-packages/django/core/management/base.py", line 117, in validate num_errors = get_validation_errors(s, app) File "/usr/lib/python2.5/site-packages/django/core/management/validation.py", line 28, in get_validation_errors for (app_name, error) in get_app_errors().items(): File "/usr/lib/python2.5/site-packages/django/db/models/loading.py", line 128, in get_app_errors self._populate() File "/usr/lib/python2.5/site-packages/django/db/models/loading.py", line 57, in _populate self.load_app(app_name, True) File "/usr/lib/python2.5/site-packages/django/db/models/loading.py", line 72, in load_app mod = __import__(app_name, {}, {}, ['models']) File "/home/barre/workspace/miraemos/miraemos/../miraemos/missions/models.py", line 17, in <module> class Mission: File "/home/barre/workspace/miraemos/miraemos/../miraemos/missions/models.py", line 18, in Mission idBrancheFeuille = models.ForeignKey(BrancheMission, verbose_name="id de la branche") File "/usr/lib/python2.5/site-packages/django/utils/maxlength.py", line 47, in inner func(self, *args, **kwargs) File "/usr/lib/python2.5/site-packages/django/db/models/fields/related.py", line 604, in __init__ assert isinstance(to, basestring), "%s(%r) is invalid. First parameter to ForeignKey must be either a model, a model name, or the string %r" % (self.__class__.__name__, to, RECURSIVE_RELATIONSHIP_CONSTANT) AssertionError: ForeignKey(<class miraemos.missions.models.BrancheMission at 0x87dac8c>) is invalid. First parameter to ForeignKey must be either a model, a model name, or the string 'self'
J'espère que quelqu'un peut m'aider. | |
|
Baboso Codeur
Nombre de messages : 112 Age : 35 Localisation : Bordeaux Date d'inscription : 23/05/2008
Status Perso: Soldat Faction: Eclaireur Caste: Chevalier
| Sujet: Re: problème models avec les foreign key Mar 19 Aoû - 23:39 | |
| Tu as oublié de mettre les (models.Model) dans la déclaration des classes. - Code:
-
class BrancheMission(models.Model): bg = models.IntegerField("borne gauche") bd = models.IntegerField("borne droite") nombreRequis = models.IntegerField("nombre de sous-mission requise pour finir la mission") ordre = models.BooleanField("sous-mission ordonnée ou non")
class Mission(models.Model): idBrancheFeuille = models.ForeignKey(BrancheMission, verbose_name="id de la branche") nom = models.CharField("nom", max_length=50) description = models.TextField("description", max_length=500) image = models.ImageField("image de la mission",upload_to='mission/vignette/') xprequise = models.IntegerField("expérience requise pour débloquer la mission") typeJoueur = models.IntegerField("type de joueur requis pour la mission",choices=TYPE_JOUEUR) def __unicode_(self): return u'%s' % self.nom | |
|
Anthony Expert
Nombre de messages : 62 Age : 36 Localisation : Cholet FRANCE Date d'inscription : 06/12/2007
Status Perso: Soldat Faction: Fantassin Caste: Dragon
| Sujet: Re: problème models avec les foreign key Jeu 21 Aoû - 0:21 | |
| Merci Baboso, je tournai en rond. J'ai bien fait de poser la question sur le forum | |
|
Baboso Codeur
Nombre de messages : 112 Age : 35 Localisation : Bordeaux Date d'inscription : 23/05/2008
Status Perso: Soldat Faction: Eclaireur Caste: Chevalier
| Sujet: Re: problème models avec les foreign key Jeu 21 Aoû - 12:38 | |
| On fait souvent des erreurs de ce style mais il vaut mieux ne pas perdre de temps avec. J'ai une technique propre à moi : si vraiment je ne comprends pas un "bug", je compare mon code avec un autre qui a la même structure mais qui est fonctionnel. | |
|
Contenu sponsorisé
| Sujet: Re: problème models avec les foreign key | |
| |
|