Vous n'êtes pas identifié(e).
Bonjour à tous
j'ai un souci qui tient surement à l'architecture de mon truc, mais bon, je voudrais contourner l'obstacle (pas tout refaire!)
J'ai un modèle Patient, avec plein de champs, et un modèle Suivi, qui a une relation avec le modèle Patient (pour savoir de quel patient on parle)
C'était très bien comme ça, il pouvait exister plusieurs suivis pour un même patient
Maintenant j'ai besoin de pouvoir, depuis le modèle Patient d'accèder par une foreign key au dernier suivi en cours (l'accès depuis le modèle est important)
Alors j'ai voulu rajouter un champ "suivi_en_cours" pour créer une autre relation, du Patient vers un Suivi :
class Patient(models.Model):
#plein de champs
suivi_en_cours = models.ForeignKey(Suivi,blank=True, null=True,verbose_name="Suivi en cours")
class Suivi(models.Model):
#autres champs
patient = models.ForeignKey(Patient)
Et ça , ça ne marche pas, parceque le modèle Suivi n'est pas défini lorsque Patient y fait appel.
Et je ne peux pas toucher l'ordre des modèles, il y en a quelques autres entre les deux...
Y-a-t-il un moyen de revenir sur la définition de mon modèle Patient après la classe Suivi pour ajouter ce champ ?
Dernière modification par quinode (02-03-2011 17:47:16)
Hors ligne
Tu mets le nom de ton modèle entre guillemets et ça roule...
A+
Le 2 mars 2011 à 17:46, Dominique Guardiola <contact _AT_ quinode.fr> a écrit :
> Bonjour à tous
> j'ai un souci qui tient surement à l'architecture de mon truc, mais bon,
> je voudrais contourner l'obstacle (pas tout refaire!)
>
> J'ai un modèle Patient, avec plein de champs, et un modèle Suivi, qui a
> une relation avec le modèle Patient (pour savoir de quel patient on parle)
> C'était très bien comme ça, il pouvait exister plusieurs suivis pour
> un même patient
>
> Maintenant j'ai besoin de pouvoir, depuis le modèle Patient (l'accès
> depuis le modèle est important) d'accèder par une foreign key au dernier
> suivi en cours
> Alors j'ai voulu rajouter un champ "suivi_en_cours" pour créer une autre
> relation, du Patient vers un Suivi :
>
>
> class Patient(models.Model):
> #plein de champs
> suivi_en_cours = models.ForeignKey(Suivi,blank=True,
> null=True,verbose_name="Suivi en cours")
>
> class Suivi(models.Model):
> #autres champs
> patient = models.ForeignKey(Patient)
>
>
> Et ça , ça ne marche pas, parceque le modèle Suivi n'est pas défini
> lorsque Patient y fait appel.
> Et je ne peux pas toucher l'ordre des modèles, il y en a quelques autres
> entre les deux...
>
> Y-a-t-il un moyen de revenir sur la définition de mon modèle Patient
> après la classe Suivi pour ajouter ce champ ?
> _______________________________________________
> django mailing list
> django _AT_ lists.afpy.org
> http://lists.afpy.org/mailman/listinfo/django
Hors ligne
Bonsoir,
Peut-être hors sujet, mais n'est-il pas préférable d'indiquer dans le
suivi ses dates de début et dates de fin ? Cela me paraît plus juste en
terme de "dépendances".
Tu conserves la faculté de retrouver le dernier suivi d'un patient (en
cours ou non, selon tes besoins) ou tous ses suivis en cours le cas
échéant. Tu peux utiliser un champs état du suivi, si tu préfères.
Qu'en penses-tu ?
Hors ligne