2017-05-02 3 views
0

私はListViewにSumを渡そうとしています。しかし、DBにさらに追加すると、Apacheを再起動するまでSumは変更されません。新しいオブジェクトがリストに表示されます。私は何が欠けていますか?何らかの理由でキャッシュされているようです。合計のキャッシュを防止する方法は?

class ReceiptListView(ListView): 
    model = Receipt 
    total_amount = Receipt.objects.all().aggregate(Sum('amount')) 
    extra_context = {"total_amount":total_amount["amount__sum"],} 
    def get_context_data(self, **kwargs): 
     context = super(ReceiptListView, self).get_context_data(**kwargs) 
     context.update(self.extra_context) 
     return context 

答えて

0

なぜこれらの値をクラスレベルで定義していますか?そうすれば、彼らは一度しか評価されません。

get_context_dataメソッドに移動して使用します。

関連する問題