2011-09-16 2 views
1

J'ai un modèle comme celui-ci:-peuplant automatique created_by et sur le terrain actionDate avec le site d'administration de Django

class Tour(models.Model): 
    Name=models.CharField(max_length=100) 
    Count=models.SmallIntegerField() 
    ActionDate=models.DateTimeField(editable=False) 
    ActionUser=models.ForeignKey(User,editable=False) 
    StatusType=models.ForeignKey(StatusType) 

maintenant je veux remplir automatiquement l'utilisateur actuel dans mon tour, donc j'utilisé ce code dans admin.py:

def save_model(self, request, obj, form, change): 
     instance = form.save(commit=False) 
     instance.ActionUser = request.user 
     instance.save() 
     form.save_m2m() 
     return instance 

admin.site.register(Tour,TourAdmin) 

ça marche grande et auto polulate utilisateur courant dans mon tour de table, mais maintenant je ne peux pas sauver la date actuelle dans le domaine ActionDate, j'ai ajouté ce code à save_model mais provoquer l'erreur:

self.ActionDate=datetime.datetime.today() 

je tryed pour remplacer Enregistrer dans mon tour Modèle:

def save(self,*args,**kwargs): 
     self.ActionDate=datetime.datetime.today() 
     super(Tour, self).save(*args,**kwargs) 

mais cette erreur cause aussi. que dois-je faire pour remplir automatiquement ActionUser et ActionDate? tnx à l'avance

Répondre

2

Pourquoi n'utilisez-vous pas auto_now dans la définition de champ?

Questions connexes