Django admin 实现search_fields精确查询实例


Posted in Python onMarch 30, 2020

我就废话不多说了,还是直接看代码吧!

search_fields = (u'gift_rule_id',u'user_id', u'activity_id',)

//默认的查询集合
def get_queryset(self, request):
  return super(GiftConfirmAdmin, self).get_queryset(request).all().order_by("-id")
//根据关键字进行查询集合
def get_search_results(self, request, queryset, search_term):
  queryset, use_distinct = super(GiftConfirmAdmin, self).get_search_results(request, queryset, search_term)
  try:
    search_term_as_int = int(search_term)
    queryset &= (self.model.objects.filter(gift_rule_id=search_term_as_int) |
           self.model.objects.filter(user_id=search_term_as_int) |
           self.model.objects.filter(activity_id=search_term))
  except:
    pass
  return queryset, use_distinct

补充知识:使用xadmin搜索search_fields报错:Related Field got invalid lookup: icontains

一、问题描述

使用xadmin实现Django后台功能时,使用search_fields = [字段名,字段名],在搜索的时候报错Related Field got invalid lookup: icontains

二、问题分析

search_fields 控制可以通过搜索框搜索的字段名称,search_fields=()或search_fields=[],xadmin使用的是模糊查询

报错信息翻译出来为:相关字段的查找无效,因为search_fields中的项不是字符类型,例如字段类型是ForeignKey,则会报错

三、解决方法

删除search_fields中类型不符的项,例如删除字段类型为ForeignKey的项

以上这篇Django admin 实现search_fields精确查询实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现的生成随机迷宫算法核心代码分享(含游戏完整代码)
Jul 11 Python
跟老齐学Python之关于类的初步认识
Oct 11 Python
python机器学习之贝叶斯分类
Mar 26 Python
Python基于property实现类的特性操作示例
Jun 15 Python
Python多线程编程之多线程加锁操作示例
Sep 06 Python
Django框架模板语言实例小结【变量,标签,过滤器,继承,html转义】
May 23 Python
tensorflow查看ckpt各节点名称实例
Jan 21 Python
Python编程快速上手——疯狂填词程序实现方法分析
Feb 29 Python
Python基于Hypothesis测试库生成测试数据
Apr 29 Python
Python爬虫与反爬虫大战
Jul 30 Python
python 实现非极大值抑制算法(Non-maximum suppression, NMS)
Oct 15 Python
Python中npy和mat文件的保存与读取
Apr 24 Python
Django模型中字段属性choice使用说明
Mar 30 #Python
Django+python服务器部署与环境部署教程详解
Mar 30 #Python
Python GUI编程学习笔记之tkinter中messagebox、filedialog控件用法详解
Mar 30 #Python
django自定义非主键自增字段类型详解(auto increment field)
Mar 30 #Python
Python GUI编程学习笔记之tkinter事件绑定操作详解
Mar 30 #Python
VSCode基础使用与VSCode调试python程序入门的图文教程
Mar 30 #Python
Python实现Wordcloud生成词云图的示例
Mar 30 #Python
You might like
discuz Passport 通行证 整合笔记
2008/06/30 PHP
通过php快速统计某个数据库中每张表的数据量
2012/09/04 PHP
PHP简单实现文本计数器的方法
2016/04/28 PHP
JavaScript中常见陷阱小结
2010/04/27 Javascript
为JavaScript添加重载函数的辅助方法
2010/07/04 Javascript
ie6下png图片背景不透明的解决办法使用js实现
2013/01/11 Javascript
ajax请求get与post的区别总结
2013/11/04 Javascript
浅谈Javascript 执行顺序
2013/12/18 Javascript
jQuery简单图表peity.js使用示例
2014/05/02 Javascript
Jquery 全选反选实例代码
2015/11/19 Javascript
浅谈JS原型对象和原型链
2016/03/02 Javascript
JS实现页面数据无限加载
2016/09/13 Javascript
javascript代码调试之console.log 用法图文详解
2016/09/30 Javascript
vue.js表格组件开发的实例详解
2016/10/12 Javascript
jQuery实用密码强度检测
2017/03/02 Javascript
微信小程序教程系列之设置标题栏和导航栏(7)
2020/06/29 Javascript
React-Router如何进行页面权限管理的方法
2017/12/06 Javascript
微信小程序实现搜索框功能及踩过的坑
2020/06/19 Javascript
vue中v-for循环选中点击的元素并对该元素添加样式操作
2020/07/17 Javascript
vue界面发送表情的实现代码
2020/09/11 Javascript
[00:05]ChinaJoy现场 DOTA2玩家高呼“CN DOTA BEST DOTA”
2019/08/04 DOTA
python测试驱动开发实例
2014/10/08 Python
全面了解Python的getattr(),setattr(),delattr(),hasattr()
2016/06/14 Python
python3如何将docx转换成pdf文件
2018/03/23 Python
From CSV to SQLite3 by python 导入csv到sqlite实例
2020/02/14 Python
pycharm永久激活超详细教程
2020/10/29 Python
让IE支持HTML5的方法
2012/12/11 HTML / CSS
俄罗斯在线大型超市:ТутПросто
2021/01/08 全球购物
求职推荐信范文
2013/12/01 职场文书
工地安全检查制度
2014/02/04 职场文书
文明宿舍获奖感言
2014/02/07 职场文书
车间机修工岗位职责
2014/02/28 职场文书
闭幕式主持词
2014/04/02 职场文书
2014党员整改措施思想汇报
2014/10/07 职场文书
师德先进个人事迹材料
2014/12/19 职场文书
青年文明号汇报材料
2014/12/23 职场文书