2009-08-18 7 views
0

J'utilisé: SplitDateTimeWidget pour diviser un champ DateHeure,Django: obtenir des entrées d'aujourd'hui et SplitDateTime Widget?

appointment = forms.DateTimeField(widget=forms.SplitDateTimeWidget) 

Dans le côté modèle je parviens à utiliser Datepicker et TimePicker pour chaque champ, en utilisant jQuery.

Lorsque je tente de filtrer les entrées concernant la date d'aujourd'hui dans ce code:

d = datetime.date.today() 
entries = Entry.objects.filter(appointment__year=d.year ,appointment__month=d.month ,appointment__day=d.day) 

Il montre les entrées d'hier 17 août :(qui est vraiment bizarre

moi avons essayé de diviser la date et l'heure dans le modèle, j'ai obtenu le même résultat que bien!

Toute idée de comment résoudre ce problème?!

+0

C'est toujours le 17 août où je suis. Quelle est l'heure de votre serveur? – inerte

+0

OPS, LOL je oublie totalement de changer le fuseau horaire dans settings.py désolé. – Hamza

Répondre

2

fixer vos paramètres de fuseau horaire, dans settings.py TIME_ZONE

Par défaut:'America/Chicago'

Quelques extraits d'informations utiles à partir the docs:

Une chaîne représentant le fuseau horaire pour cette installation. See available choices.

(...)

Notez que c'est le fuseau horaire à laquelle Django convertira toutes dates/heures - pas nécessairement le fuseau horaire du serveur.

(...)

Django ne peut pas utiliser de manière fiable les fuseaux horaires de remplacement dans un environnement Windows. Si vous exécutez Django sous Windows, , cette variable doit être définie pour correspondre au fuseau horaire système .

+0

Merci, Déjà compris le problème et l'ai réparé, j'utilise Django sur Ubuntu, BSD et ArchLinux surtout .. n'aime pas faire face à Windows comme environnement de développement .... BTW toute solution pour changer le fuseau horaire concernant le visiteur ou utilisateur actuel?! Cordialement – Hamza

+0

@Hamza: On utilise généralement un filtre de template pour faire cela. Voir ici http://djangosnippets.org/snippets/183/ pour un exemple de filtre que vous pouvez utiliser. Veuillez marquer la réponse comme acceptée afin que votre question puisse avoir une réponse correcte – nosklo

Questions connexes