restar dos horas TimeField

326 views
Skip to first unread message

agapito treviño

unread,
Aug 14, 2015, 6:30:19 PM8/14/15
to Django-es
Hola, 

quiero obtener  el resultado de  restar  dos horas definidas las dos en  un campo TimeField 

Tengo  estas  tabla:

class OrdenDet(models.Model):
orden    = models.ForeignKey('Orden')  
inicio     = models.TimeField(null=True,blank=True)
termino = models.TimeField(null=True,blank=True)

def tiempo(self): 
return float((datetime.strptime(str(self.termino), '%H:%M:%S')-
datetime.strptime(str(self.inicio), '%H:%M:%S')).seconds/3600.0)

tengo esta función  tiempo  para  obtén el tiempo 

tengo  un listview  :

inicio            termino            timepo 
8:45 a.m.       8:55 a.m.        0.16666666667

Como es la manera de  restar  dos  campos TimeField..?

Saludos

toledano.mx

unread,
Aug 14, 2015, 7:54:12 PM8/14/15
to djan...@googlegroups.com


Sent from Mailbox


--
--
Ha recibido este mensaje porque está suscrito a Grupo "Grupo de Usuarios del Framework Django de habla hispana" de Grupos de Google.
Si quieres publicar en este grupo, envía un mensaje de correo
electrónico a djan...@googlegroups.com
Para anular la suscripción a este grupo, envíe un mensaje a django-es-...@googlegroups.com
Para obtener más opciones, visita este grupo en http://groups.google.com.bo/group/django-es.
---
Has recibido este mensaje porque estás suscrito al grupo "Django-es" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a django-es+...@googlegroups.com.
Para acceder a más opciones, visita https://groups.google.com/d/optout.

agapito treviño

unread,
Aug 14, 2015, 11:10:43 PM8/14/15
to djan...@googlegroups.com
Ya lo implemente

        inicio =models.TimeField(null=True,blank=True)
termino = models.TimeField(null=True,blank=True)

def tiempo(self):
end = timedelta(self.termino.hour, self.termino.minute, self.termino.second)  
start = timedelta(self.inicio.hour, self.inicio.minute, self.inicio.second)
return end - start

pero  los  minutos me  los  pone en los  segundos, alguna  idea..?

inicio                fin                     tiempo
11:45 a.m.         11:56 a.m.         0:00:11 



Has recibido este mensaje porque estás suscrito a un tema del grupo "Django-es" de Grupos de Google.
Para anular la suscripción a este tema, visita https://groups.google.com/d/topic/django-es/2fAeN5ZRWIg/unsubscribe.
Para anular la suscripción a este grupo y a todos sus temas, envía un correo electrónico a django-es+...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages