简体   繁体   English

基于字符串的存在过滤Django Queryset

[英]Filtering Django Queryset Based on Presence of String

I have a model which renders a json file in views.py: 我有一个模型可以在views.py中呈现一个json文件:

 def bill_sum(request):
  data = Summary.objects.values('title','summary','summary_text')
  return render(request,'billsummary.html',context={'data':data})

Is it possible to filter the summary_text object query by looking up a specific string which I would pass in from urls.py? 是否可以通过查找将从urls.py中传入的特定字符串来过滤summary_text对象查询?

Something like using 像使用

from django.db.models import Q Summary.objects.values('title;'summary',Q('summary_text'__contains=someword),...) from django.db.models import Q Summary.objects.values('title;'summary',Q('summary_text'__contains=someword),...)

Sure its possible. 当然有可能。 Try like this: 尝试这样:

def some_view(request);
    somewords  = request.GET.get('somewords')
    data = Summary.objects.filter(summary_text__icontains=somewords).values('title','summary','summary_text')  # icontains has been used here instead of contains to ignore uppercase/lowercase issues

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM