MonthArchiveView中的get_queryset()返回所有对象,而不是仅在请求的月份创建的对象

时间:2017-03-09 12:58:32

标签: python django

为什么来自MonthArchiveView的get_queryset()仅在请求的月份中从模型中返回对象created的所有对象?

class BudgetMonthlyView(MonthArchiveView):
    template_name = 'budget/monthly.html'
    model = FinanceData
    date_field = "created"
    make_object_list = False
    allow_future = False
    month_format = '%m'

    def get_context_data(self, **kwargs):
        context = super(BudgetMonthlyView, self).get_context_data(**kwargs)
        print(self.get_queryset()) #return all objects from FinanceData model
        print(context['object_list']) #works fine
        return context

1 个答案:

答案 0 :(得分:1)

这就是get_dated_items实施的方式。如果您查看the source code,则可以看到object_list方法返回了date_list

它可能以这种方式实现,因为日期归档视图会将其他内容添加到上下文以及{{1}},例如{{1}}。