2011-10-25 6 views
5

두 날짜가 있고 "평가판 끝내기 전에 남은 일"과 같은 메시지를 표시하려고합니다. 여기서 n은 주어진 두 날짜 사이의 일 수입니다. 내부보기에서이를 수행하는 것이 더 좋습니까? 아니면 템플릿 내부에서이를 수행하는 빠른 방법이 있습니까?장고 템플릿 내 두 날짜 사이의 일 수 계산

답변

1

here

내가 실제로 같은 방법 lazerscience가 사용하는 사용하는 것 같은 것을 복제 :

from datetime import datetime, timedelta 
from django import template 
from django.utils.timesince import timesince 

register = template.Library() 

@register.filter 
def time_until(value): 
    now = datetime.now() 
    try: 
     difference = value - now 
    except: 
     return value 

    if difference <= timedelta(minutes=1): 
     return 'just now' 
    return '%(time)s ago' % {'time': timesince(value).split(', ')[0]} 
+0

이 internatiomalized 할 수 있도록 기능에 ugettext 사용하는 것이 좋을 것이다. –

+0

동의합니다.이 스 니펫은 내가 링크 된 대답에서 가져온 것으로, "시간 이후"대신 "날짜까지의 시간"을 표시하도록 수정되었습니다 (여전히 "x 일 전"을 인쇄합니다). P) –

관련 문제