2011-04-13 67 views
5

Quiero imprimir algún tipo de sello de tiempo o algún tipo de función para decir qué día y hora es en una plantilla. En mi punto de vista tengoDjango Quiero imprimir la fecha y la hora para hoy

time = datetime.now() 

y en mi plantilla tengo

{{time}} 

Todo esto hace es imprime un objeto <type 'datetime.date'>.

+0

¿Utilizó 'de fecha y hora datetime' importación? –

+0

@aminho Sí, tengo – Shehzad009

Respuesta

2

Normalmente, esto debería funcionar:

from datetime import datetime 

def a_view(request): 
    return render_to_response("a_template.html", { 
     'time':datetime.now(), 
     }, context_instance=RequestContext(request)) 

Entonces representar el objeto de fecha y hora en su plantilla:

<p>{{time}}</p> 

uso del filtro incorporado fecha como se describe here para dar formato a la fecha si lo desea .

+0

¿Qué demonios escribí en el contexto de mi solicitud? Escribí un nombre de variable incorrecto. No puedo creer que haya hecho eso. – Shehzad009

+0

Existe una plantilla incorporada que hace esto: https://docs.djangoproject.com/en/1.8/ref/templates/builtins/#now –

+0

no use 'datetime.now()' use 'django.utils. timezone.now() 'y establecer' USE_TZ = True' en su lugar, entonces '{{time}}' debe mostrar la hora usando la zona horaria actual. – jfs

60

si es sólo en la plantilla, utilice now

It is {% now "f" %} 
+0

Vine aquí para decir esto. Hay un filtro de plantilla incorporado que hace exactamente lo que OP está pidiendo que haga. No estoy seguro de por qué esta es la respuesta aceptada. https://docs.djangoproject.com/en/1.8/ref/templates/builtins/#now –

Cuestiones relacionadas