2011-02-08 15 views
0

として、Djangoのクエリセットに余分なフィールドを追加します。は、私は次のモデルを持ってはtimedeltaタイプ

テンプレート内のlengthは整数型です。マネージャによって返されたオブジェクトの長さとして自分のコードを変更するには、テンプレートでtimedeltaオブジェクトにアクセスできますか?

私はリストを返して秒数をtimedelta個のオブジェクトに変換することでそれを行うことができましたが、ソートやフィルタリングなどをPythonコードで行う必要がありました。

答えて

0

私のソリューションは、それはいくつかの整数型

from django import template 
import datetime 

register = template.Library() 

def timedelta(value): 
    if isinstance(value, (long,int)): 
     return datetime.timedelta(seconds=value) 
    elif isinstance(value, datetime.timedelta): 
     return value 
    else: raise UnsupportedOperation 

register.filter('timedelta',timedelta) 

だ長VARの種類を決定した場合にはtimedeltaを返すフィルタを作成し、それは些細な {{ uptime.length|timedelta }}

1

Add a property実際のフィールドを見て、それを適切なタイプに変換するモデルです。

+0

だしかし、ここでは正確に私が使用する必要があるテンプレートで使用することですプロパティ?私はそれを見ることができるので、私はジャンゴではかなり初心者ですので;) – damienix

関連する問題