通用视图:object_list如何传递请求变量

时间:2011-02-28 11:59:09

标签: django django-generic-views

如何将通用视图中的请求变量传递给查询集。

例如,我需要将 req_brand_slug 从请求传递到queryset中的过滤器:

all_by_brand = {
    'queryset': Br.objects.filter(slug=req_brand_slug)
}
url(r'^model/(?P<req_brand_slug>[\w|-]+)/$', all_by_brand , name='brand'), 

1 个答案:

答案 0 :(得分:3)

您必须创建自己的视图,该视图使用自定义参数调用通用视图。

from django.views.generic.list_detail import object_list

def my_view(request, req_brand_slug):
    extra_context = {}
    return object_list(request, queryset=Br.objects.filter(slug=req_brand_slug),
                       template_name="my_template.html",
                       paginate_by=20,
                       extra_context=extra_context)