2015-10-13 9 views
5

इम Django 1.8, और मैं का उपयोग कर मेरे क्षेत्र DurationField के रूप में परिभाषित में से एक है, लेकिन मुझे नहीं किसी भी तरह से सही ढंग से मेरे टेम्पलेट पर प्रदर्शित करने लगता है, अगर मैं उत्पादन इसे इस तरह:प्रदर्शन और टेम्पलेट में प्रारूप Django DurationField

{{runtime}} 
i just get 0:00:00.007980 

वहाँ किसी भी फिल्टर या कुछ और

अधिक की तरह
2hours 30 min 

उत्तर

9

नहीं है, मुझे नहीं लगता कि किसी भी फिल्टर में बनाया गया एक timedelta फ़ॉर्मेट करने के लिए, यह एक लिखने के लिए काफी आसान होना चाहिए है प्रदर्शित करने में किसी अन्य तरीके से है हालांकि खुद

यहाँ एक बुनियादी (और untested) उदाहरण है:

from django import template 


register = template.Library() 


@register.filter 
def duration(td): 
    total_seconds = int(td.total_seconds()) 
    hours = total_seconds // 3600 
    minutes = (total_seconds % 3600) // 60 

    return '{} hours {} min'.format(hours, minutes) 
कुछ छोटे परिवर्तन के साथ
+0

, इस आदर्श जवाब था। धन्यवाद ! –

संबंधित मुद्दे