2016-07-24 5 views
1

とはエラーではありません。私の見解ではプロパティは、私はジャンゴで定義された以下のモデルを持って返さないと日時

私が参照するとき、私は通じ来て何の値を取得していない:

{{budget.days_to_expiry}} 

と何かが間違っているコンソールにエラーなし。

私は、次の手順を実行しているかのように私の名前付けが正しいことを知っている:

@property 
def days_to_expiry(self): 
    return 1 
    todays_date = datetime.datetime.now() 
    datetime.timedelta(7) 
    days_until = (self.expiry_date - todays_date).days 

私はビューに「1」を参照してください。

これを引き起こす原因は何ですか?

+0

両方のスニペットで 'datetime.timedelta(7)'を呼び出すと、*全く効果がないことに注意してください。 –

+0

ヘッドアップありがとう。私は、2つを整数(時間のない日)として比較することを許可したと思った。それを削除しましたが運がまだありません:( – NickP

答えて

1

だけDateField()を使用しているので:それは

class MasterBudget(models.Model): 
    name = models.CharField(max_length=140) 
    expiry_date = models.DateField() 

    @property 
    def days_to_expiry(self): 
     todays_date = datetime.date.today() 
     return (self.expiry_date - todays_date).days 

datetime.dateインスタンス

でPythonで表される日付は、たぶんこのような何かをやってみてくださいexpiry_dateと今日の間の日数が返されます。

これはあなたが達成したいと思っていたものですか?

+0

正確に何を達成しようとしていましたか?ありがとう、魅力のように動作します – NickP

+0

@NickP喜んでそれはあなたを助けました! – jape

関連する問題