2013-07-19 4 views
0

Dans mon application Django, j'ai une vue qui soumettent des données à la base de données pour mon modèle de tâche. Un de ces champs comprend une heure. Chaque fois que je soumets ces données, puis le relire dans mon application, il semble à droite (c'est-à-dire ma page d'index avec une liste de tous les objets). Cependant, quand j'ai regardé les entrées de la base de données, ils sont tous stockés avec des heures 5 heures après ce que j'ai entré. Ce qui me dérange, c'est comment ils peuvent être entrés incorrectement et pourquoi il s'affiche correctement dans mon index. J'ai vérifié où je l'ajoute comme suit.django imporperly entrer dateetime dans la base de données

hour = int(request.POST['time'][:2] #request.POST['time'] is formatted HH:MM AM 
minute = int(request.POST['time'][3:5] 
pmOffset = 0 
if 'PM' in request.POST['time']: 
    pmOffset = 12 
print task.date 
task.date = datetime.now().replace(hour=hour+pmOffset, minute=minute) 
print task.date 
#some other fields 
print task.date 
task.save() 
print task.date 

Si je dis entrer 07h00 dans ma forme, ces déclarations d'impression sortir avec 7 heures en eux, mais la tâche qui est stocké a midi en elle. Quelqu'un a une idée de pourquoi cela pourrait se produire? Je suis complètement déconcerté. Si vous avez besoin de plus d'informations, il suffit de demander.

+0

Veuillez corriger votre code - il contient des erreurs de syntaxe (jetez un oeil à la coloration syntaxique et vous verrez qu'il y a des citations erronées). – Tadeck

Répondre

Questions connexes