Skip to content

Instantly share code, notes, and snippets.

@ahoulgrave
Last active December 16, 2015 06:29
Show Gist options
  • Save ahoulgrave/5391468 to your computer and use it in GitHub Desktop.
Save ahoulgrave/5391468 to your computer and use it in GitHub Desktop.
template tag para Django. Muestra la diferencia de tiempo en años, meses y días Requiere python-dateutil
# -*- coding: utf-8 -*-
import datetime
from django import template
from dateutil import relativedelta
register = template.Library()
@register.simple_tag()
def diferencia_de_tiempo(cdate):
today = datetime.date.today()
#cdate = datetime.datetime.strptime(cdate,'%Y-%m-%d')
date1 = datetime.datetime.strptime(str(datetime.date.today()), '%Y-%m-%d')
date2 = datetime.datetime.strptime(str(cdate), '%Y-%m-%d')
r = relativedelta.relativedelta(date1, date2)
stri = ''
if r.years > 0:
stri = str(r.years)
if r.years == 1:
stri = stri + ' año'
else:
stri = stri + ' años'
if r.months > 0:
if r.years > 0:
stri = stri+', '
stri = stri + str(r.months) + ' mes'
if r.months > 1:
stri = stri + 'es'
if r.months == 0 and r.years == 0:
stri = str(r.days) + ' dias'
return stri
register.simple_tag(diferencia_de_tiempo)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment