DetailView
属性
方法
get_object(queryset = None)
返回此视图将显示的单个对象。
1.
如果queryset 提供,则该查询集将用作对象的来源;否则,get_queryset()将被使用。
2.
在视图get_object()的pk_url_kwarg参数中查找参数;如果找到此参数,则此方法使用该值执行基于主键的查找。
3.
如果未找到此参数,它将寻找一个 slug_url_kwarg参数,并使用进行段塞查找 slug_field。
4.
当query_pk_and_slug为时True,get_object()将同时使用主键和slug进行查找。
ListView
属性
paginate_by
一个整数,指定每页应显示多少个对象。
page_kwarg
一个字符串,指定用于page参数的名称。默认为page。
方法
get_context_data(** kwargs)
返回用于显示对象列表的上下文数据。
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
context['now'] = timezone.now()
return context
get_queryset()
获取此视图的项目列表。这必须是可迭代的,并且可能是查询集(将在其中启用特定于查询集的行为)。