很多时候,我看到这个:
def get_queryset(self):
queryset = super(SomeView, self).get_queryset()
return queryset.filter(published=True)
这在基于 Django 类的视图中很典型。我想知道的是,我们为什么要这样做,什么时候可以这样做:
queryset = someModel.objects.all().filter(args)
或者,如果您更喜欢两条线(或者您认为我只喜欢一条线,这里不是这种情况):
all_the_stuff = someModel.objects.all()
the_stuff_we_want = all_the_stuff.filter(...)
另外,调用背后的逻辑super()
究竟是如何工作的,因为我根本不明白。任何指向解释这一点的优秀文档的链接都将受到高度赞赏,以及为什么要使用它,因为第二个示例更容易理解。