En su views.py
, puede convertir el valor de mydate
a segundos desde la época Unix de la siguiente manera:
seconds = time.mktime(mydate.timetuple())
Luego pasarlo en el diccionario se utiliza como argumento para render_to_response()
(o lo que sea que esté usando para representar su vista), y en su plantilla, pegue {{seconds}}
en un campo oculto, que luego puede sacar del DOM para pasar a su función de gráficos de JavaScript.
Tenga en cuenta que un DateField
corresponde al objeto Python datetime.date
, y como tal, su timetuple
tendrán sus horas, minutos y segundos campos establecidos a 0. Si eso no es suficiente grano fino para usted, usted tiene que cambiar mydate
a DateTimeField y será datetime.datetime
. Todavía puede usar mydate.timetuple()
si hace esto.
Además, supongo que está utilizando la hora local. Si está utilizando la hora UTC, desea calendar.gmtime()
en lugar de time.mktime()
y mydate.utctimetuple()
en lugar de mydate.timetuple()
, pero utctimetuple()
es solo un método válido para los objetos datetime.datetime
. Consulte los documentos datetime
(también time
y calendar
) para obtener más detalles inquietos.
EDITAR: detalles complicados como el hecho de que mktime()
devuelve un flotador, que piquadrat recordaba y yo no. El enfoque de filtro personalizado también es bueno. Votando eso.
1196550000000 no es una marca de tiempo Unix, a menos que estamos hablando del año 37 942 o algo así. – hop
Parece una marca de tiempo de JavaScript, ms desde unix epoch. – 0atman