Bonjour,

J'ai un gros souci au niveau de l'enregistrement dans ma table membre qui
a une relation 1 à 1 avec la table User. Donc au final membre est un
User_profile. Quand j'inscris un nouveau User, dans ma table, cela ajoute
également un nouveau membre. Jusque là tout va bien....
Je crois que je ne comprends pas exactement le processus d'enregistrement
mais surtout de modification car c'est à ce moment là que ça part en
cacahuète. Voici donc mon code :

models.py

[code]
class Membre(models.Model):
   user = models.ForeignKey(User, unique = True)
   #id_membre = models.AutoField(primary_key = True)
   nom = models.CharField(max_length=50)
   prenom = models.CharField(max_length=50)
   e_mail = models.EmailField()
   ImagePortrait = models.FileField(upload_to = "images_membres/", blank =
True, null=True)
   ImageLarge = models.IntegerField(blank = True, null=True, help_text =
"Remplissage automatique, ne pas remplir")
   ImageHaut = models.IntegerField(blank = True, null=True,  help_text =
"Remplissage automatique, ne pas remplir")
   ThumbnailLarge = models.ImageField(upload_to="images_membres/", blank =
True, null=True, help_text = "Remplissage automatique, ne pas remplir")

   def save(self, *args, **kwargs):
      super(Membre, self).save(*args, **kwargs)
      #kwargs['force_insert'] = False
      #kwargs['force_update'] = True
      if self.ImagePortrait:
        ReziseIm(self.ImagePortrait, self.ThumbnailLarge, self.id,
self.ImageLarge, self.ImageHaut)
      super(Membre, self).save(*args, **kwargs) 
[/code]

Lorsque je rentre en modification pour un membre lambda dans l'interface
d'admin mon erreur est la suivante : 
        
duplicate key value violates unique constraint "geo_membre_user_id_key"
DETAIL:  Key (user_id)=(1) already exists.

Alors que lorsque je modifie mon propre profil administrateur tout marche
parfaitement...

Du coup vous pouvez voir les lignes kwargs commentées car j'ai essayé de
forcer l'update mais j'ai toujours la même erreur. Je fais également deux
fois "super(Membre, self).save(*args, **kwargs)", j'ai vu cela dans un tuto
et je ne sais pas exactement pourquoi...

Bref je ne comprends plus ce que je fais et ça ne marche plus...Et en
plus ça m'énerve...

Si vous avez des réponses merci d'avance..

PS Administrateurs du site : je crois que nous nous faisons spammer par
IA_Dinorah

Si vous savez d'où cela vient...
_______________________________________________
django mailing list
[email protected]
http://lists.afpy.org/mailman/listinfo/django

Répondre à