隐藏页面特效

Q查询的高级用法

示例:如前端需要通过下拉框选择需要通过什么过滤字段来查询输入的关键字,后端如何使用Q查询过滤包含输入的关键字呢?

def customers(request): search_field = request.GET.get('search_field') #选择查询的字段 kw = request.GET.get('kw') # 搜索关键字 if kw: # 根据传过来的关键字搜索过滤出总数据 用**打散的方式,因为search_field不是关键字 # 此时过滤的还不是包含关键字的,需要在前端下拉选项中设置value的值为qq__contains这种写法 # 方式一 使用**打散 customer_list = models.Customer.objects.filter(**{search_field:kw}) # 打散后形式 qq__contains=小明 # 方式二 q_obj = Q() # 生成Q对象 # q_obj.connector = 'or' # 指定Q查询的连接符,默认不写就是and q_obj.children.append((search_field,kw)) # 传入元组形式的数据 and关系 Q(qq__contains='xx')&Q(name__contains='小明') customer_list = models.Customer.objects.filter(q_obj) #直接将Q对象传入过滤条件中 ..... return render(request, 'customers.html')

__EOF__

本文作者404 Not Found
本文链接https://www.cnblogs.com/weiweivip666/p/13816678.html
关于博主:可能又在睡觉
版权声明:转载请注明出处
声援博主:如果看到我睡觉请喊我去学习
posted @   我在路上回头看  阅读(732)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
点击右上角即可分享
微信分享提示