Login

timeto template filter

Author:
japerk
Posted:
April 10, 2009
Language:
Python
Version:
1.0
Score:
0 (after 0 ratings)

This is a more compact version of django's timeuntil filter that only shows hours & minutes. If used like {{ dt|timeto }}, will produce output like "1hr 30min". If you know for sure that the server has the same timezone as the datetime value, then you don't need datetutil.tz for utc time conversion.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
from django import template
from dateutil import tz
import datetime

register = template.Library()

@register.filter
def timeto(value):
    now = datetime.datetime.now(tz.tzutc())
    diff = value.astimezone(tz.tzutc()) - now
    minutes = diff.seconds / 60
    hours = minutes / 60
    mins = minutes - (hours * 60)
    return '%dhr %dmin' % (hours, mins)

More like this

  1. Template tag - list punctuation for a list of items by shapiromatron 2 months ago
  2. JSONRequestMiddleware adds a .json() method to your HttpRequests by cdcarter 2 months, 1 week ago
  3. Serializer factory with Django Rest Framework by julio 9 months, 1 week ago
  4. Image compression before saving the new model / work with JPG, PNG by Schleidens 9 months, 4 weeks ago
  5. Help text hyperlinks by sa2812 10 months, 3 weeks ago

Comments

Please login first before commenting.