Django如何合并两个QuerySet对象

 时间:2024-10-27 07:08:40

1、python 自带的模块itertools,可以使用 里面的chain函数引入from itertools import chain

Django如何合并两个QuerySet对象

2、现在我们有一个任务:需要查询文章(根据文章的题目和文章的标签进行模糊查询)这样我们就需要先根据文章题目查询,然后根据文章的标签进行查询(一个标签对应多个文章),然后合成一个QuerySet对象,最后去重

Django如何合并两个QuerySet对象

3、写逻辑并利用chai艘绒庳焰n函数合并两个QuerySet对象#逻辑@login_required(login_url="/user/account/") #登录核验def search(request): #模糊查询(涵盖主题的title和标签) if request.method == "POST": key = request.POST.get('key').strip() context = {} titles = Title.objects.filter(title__icontains=key) tags = Tag.objects.filter(tag_name__icontains=key) for tag_obj in tags: titles = chain(titles,tag_obj.title_set.all()) titles = list(set(titles)) #去重 context["titles"] = titles context["key"] = key return render(request,'forum/search_list.html',context) else: return HttpResponseRedirect("/forum/")

Django如何合并两个QuerySet对象

4、实现结果

Django如何合并两个QuerySet对象
Django如何合并两个QuerySet对象
  • 天津中专怎么报名
  • js如何判断多组数字是否交叉或者重复
  • 考研复习计划
  • photoshop cs6 界面的都是什么意思?
  • 怎样编译less文件,怎样把less文件编译成css
  • 热门搜索
    我爱足球手抄报 小学生守则手抄报 爱护校园环境手抄报 珍爱生命手抄报资料 数学乐园手抄报 传染病防控手抄报 六年级手抄报 数学手抄报的资料 诵读经典手抄报 手抄报边框设计图大全