2017-12-15 8 views
2

私は有効期間を持つ期間フィールドを持っています。最大値は24時間です。
24時間が表示されている場合しかし、それはのように示しています。私はそれが24:00持続時間表示をHとする方法:i in django?

として見せたい1 day, 0:00:00

次のように私は現在DurationFieldを表示しています:

<td>{{ entry.duration }}</td> 
+0

こんにちは、@ surfer190私は疑問に思っていました。 –

+0

Johnあなたの答えはフォームフィールドに関するものでしたが、私はテンプレートに期間を表示するだけでした。だから私はテンプレートタグを持って行った。 – surfer190

+0

おやおや! –

答えて

0

カスタムを作成することができますこの回答に示されているように、期間フィールドのウィジェットで出力を操作してください:DurationField format in a ModelForm

from django.forms.widgets import TextInput 
from django.utils.dateparse import parse_duration 

class DurationInput(TextInput): 

    def _format_value(self, value): 
     duration = parse_duration(value) 
     days = duration.days 
     seconds = duration.seconds 

     minutes = seconds // 60 
     seconds = seconds % 60 

     hours = minutes // 60 
     minutes = minutes % 60   

     return '{:02d}{:02d}:{:02d}'.format(
      hours if hours != 0 else 24, minutes, seconds 
     ) 

あなたのフォームで使用してください。

関連する問題