Django admin 实现search_fields精确查询实例

 更新时间:2020年03月30日 14:30:53   作者:只对西红柿鸡蛋有感觉  
这篇文章主要介绍了Django admin 实现search_fields精确查询实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

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

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读写CSV文件

    Python数据读写之Python读写CSV文件

    这篇文章主要介绍了Python数据读写之Python读写CSV文件,文章围绕主题展开详细的内容介绍,具有一定的参考价值,感兴趣的小伙伴可以参考一下
    2022-06-06
  • Win10下python 2.7与python 3.7双环境安装教程图解

    Win10下python 2.7与python 3.7双环境安装教程图解

    这篇文章主要介绍了Win10下python 2.7与python 3.7双环境安装教程,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-10-10
  • 让你分分钟学会python条件语句

    让你分分钟学会python条件语句

    学好Python和条件语句,将方便有效提高工作效率,这篇文章主要给大家介绍了关于python条件语句的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2021-08-08
  • Python 函数返回值的示例代码

    Python 函数返回值的示例代码

    这篇文章主要介绍了Python 函数返回值的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-03-03
  • Python简单爬虫导出CSV文件的实例讲解

    Python简单爬虫导出CSV文件的实例讲解

    今天小编就为大家分享一篇Python简单爬虫导出CSV文件的实例讲解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-07-07
  • python去除字符串中的空格、特殊字符和指定字符的三种方法

    python去除字符串中的空格、特殊字符和指定字符的三种方法

    本文主要介绍了python去除字符串中的空格、特殊字符和指定字符的三种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • python中pandas.read_csv()函数的深入讲解

    python中pandas.read_csv()函数的深入讲解

    这篇文章主要给大家介绍了关于python中pandas.read_csv()函数的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • Python多层装饰器用法实例分析

    Python多层装饰器用法实例分析

    这篇文章主要介绍了Python多层装饰器用法,结合实例形式简单分析了Python多层装饰器的相关使用方法与注意事项,需要的朋友可以参考下
    2018-02-02
  • 复制粘贴功能的Python程序

    复制粘贴功能的Python程序

    接下来,由于我觉得手动复制粘贴这29000条插入语句实在是太痛苦了,所以打算用Python来完成这项工作。这是我第一次自己动手写Python代码,感觉还挺顺利的。
    2008-04-04
  • python分布式编程实现过程解析

    python分布式编程实现过程解析

    这篇文章主要介绍了python分布式编程实现过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-11-11

最新评论