Django Xadmin多对多字段过滤实例


Posted in Python onApril 07, 2020

在xadmin中是不能像原生admin那样使用formfield_for_manytomany方法来过滤多对多字段

Django Xadmin多对多字段过滤实例

进入xadmin源码,找到了formfield_for_dbfield这个方法,测试是有用的,可以过滤第一个选项框的值

Django Xadmin多对多字段过滤实例

补充知识:给django admin后台管理user扩展下拉框及多选框的字段

1.首先在models.py中编写扩展User所用到的userProfile模型及下拉框和多选框选项值所需要的模型(因为我所做的下拉框和多选框的值都是从数据库里面取得),代码如下:

2.第二步编写admin.py对User字段进行扩展,代码如下:

# -*- coding: UTF-8 -*-
from django.contrib import admin
from django import forms
from TESTAPP.models import test,userProfile
from django.contrib.auth.admin import UserAdmin
from django.contrib.auth.models import User
 
# Register your models here.
class userProfileForm(forms.ModelForm):
  option = forms.ModelChoiceField(label=u'下拉框',queryset=test.objects.all())
  checkbox = forms.ModelMultipleChoiceField(label=u'多选框',queryset=test.objects.all(),widget=forms.CheckboxSelectMultiple())
  class Meta:
    model = userProfile
    fields = ['option','checkbox']
class profileInline(admin.StackedInline):
  model = userProfile
  form = userProfileForm
class testUserAdmin(UserAdmin):
  inlines = [profileInline,]
admin.site.unregister(User)
admin.site.register(User, testUserAdmin)

通过这两步就可以试下在django admi台管理User中扩展一个下拉框和一个多选框,效果如下图:

Django Xadmin多对多字段过滤实例

以上这篇Django Xadmin多对多字段过滤实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现的各种排序算法代码
Mar 04 Python
使用Python编写爬虫的基本模块及框架使用指南
Jan 20 Python
Python实现的人工神经网络算法示例【基于反向传播算法】
Nov 11 Python
Python使用win32 COM实现Excel的写入与保存功能示例
May 03 Python
使用Django2快速开发Web项目的详细步骤
Jan 06 Python
详解Python:面向对象编程
Apr 10 Python
python对象与json相互转换的方法
May 07 Python
python实现远程控制电脑
May 23 Python
Python搭建代理IP池实现检测IP的方法
Oct 27 Python
pytorch实现mnist分类的示例讲解
Jan 10 Python
基于Python pyecharts实现多种图例代码解析
Aug 10 Python
浅谈Python协程asyncio
Jun 20 Python
解决Django部署设置Debug=False时xadmin后台管理系统样式丢失
Apr 07 #Python
解决Python中报错TypeError: must be str, not bytes问题
Apr 07 #Python
Pycharm及python安装详细步骤及PyCharm配置整理(推荐)
Jul 31 #Python
django 实现简单的插入视频
Apr 07 #Python
django实现后台显示媒体文件
Apr 07 #Python
Python搭建Keras CNN模型破解网站验证码的实现
Apr 07 #Python
Python3之外部文件调用Django程序操作model等文件实现方式
Apr 07 #Python
You might like
php实现TCP端口检测的方法
2015/04/01 PHP
可以文本显示的公告栏的js代码
2007/03/11 Javascript
js apply/call/caller/callee/bind使用方法与区别分析
2009/10/28 Javascript
jquery 1.4.2发布!主要是性能与API
2010/02/25 Javascript
JS清空多文本框、文本域示例代码
2014/02/24 Javascript
JavaScript实现搜索框的自动完成功能(一)
2016/02/25 Javascript
Bootstrap3 input输入框插入glyphicon图标的方法
2016/05/16 Javascript
JQuery的常用选择器、过滤器、方法全面介绍
2016/05/25 Javascript
jQuery模拟select实现下拉菜单功能
2016/06/20 Javascript
Vue.js每天必学之组件与组件间的通信
2016/09/08 Javascript
js入门之Function函数的使用方法【新手必看】
2016/11/22 Javascript
JS实用的带停顿的逐行文本循环滚动效果实例
2016/11/23 Javascript
JS实现“隐藏与显示”功能(多种方法)
2016/11/24 Javascript
js自定义QQ菜单效果
2017/01/10 Javascript
解决npm管理员身份install时出现权限的问题
2018/03/16 Javascript
vue中rem的配置的方法示例
2018/08/30 Javascript
简述Vue中容易被忽视的知识点
2019/12/09 Javascript
[11:44]Ti9 OG夺冠时刻
2019/08/25 DOTA
Python中正则表达式的详细教程
2015/04/30 Python
python使用webdriver爬取微信公众号
2018/08/31 Python
如何利用python制作时间戳转换工具详解
2018/09/12 Python
对Pyhon实现静态变量全局变量的方法详解
2019/01/11 Python
python解析多层json操作示例
2019/12/30 Python
Python网络爬虫信息提取mooc代码实例
2020/03/06 Python
详解canvas.toDataURL()报错的解决方案全都在这了
2020/03/31 HTML / CSS
花卉与景观设计系大学生求职信
2013/10/01 职场文书
创业大赛策划书
2014/03/01 职场文书
法人身份证明书
2014/10/08 职场文书
2014年初三班主任工作总结
2014/12/05 职场文书
2014年党总支工作总结
2014/12/18 职场文书
离婚协议书范文2015
2015/01/26 职场文书
2015年党员个人自我评价
2015/03/03 职场文书
退休教师欢送会致辞
2015/07/31 职场文书
2016年社区“我们的节日·中秋节”活动总结
2016/04/05 职场文书
Redis缓存-序列化对象存储乱码问题的解决
2021/06/21 Redis
MySQ InnoDB和MyISAM存储引擎介绍
2022/04/26 MySQL