您的位置:首页 > 编程语言 > Go语言

Django笔记 自定义ListView通用视图

2016-02-19 15:15 519 查看

资料

https://ccbv.co.uk/projects/Django/1.4/django.views.generic.list/ListView/

http://stackoverflow.com/questions/22902457/django-listview-customising-queryset

自定义get_queryset函数

class Browse(generic.ListView):
template_name = 'app/browse.html'
paginate_by = 25

# Modifying the get_context_data method

def get_context_data(self, **kwargs):
context = super(Browse, self).get_context_data(**kwargs)
q = self.request.GET.get("browse")
context['input'] = q
return context

def get_queryset(self):
queryset = Cats.objects.all()
if self.request.GET.get("browse"):
selection = self.request.GET.get("browse")
if selection == "Cats":
queryset = Cats.objects.all()
elif selection == "Dogs":
queryset = Dogs.objects.all()
elif selection == "Worms":
queryset = Worms.objects.all()
else:
queryset = Cats.objects.all()
return queryset


自定义get和get_context_data函数

def get(self, request, *args, **kwargs):
#query_string = request.META.get('QUERY_STRING', '')
self.user = request.user
#if self.request.GET.get("Condition"):
return super(thisview, self).get(request, *args, **kwargs)

def get_context_data(self, **kwargs):
context = super(thisview, self).get_context_data(**kwargs)
context.update({
'par': self.par,
})
return context
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息