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 相关文章推荐
Django框架下在URLconf中指定视图缓存的方法
Jul 23 Python
python编写暴力破解zip文档程序的实例讲解
Apr 24 Python
pyqt5实现按钮添加背景图片以及背景图片的切换方法
Jun 13 Python
python 中如何获取列表的索引
Jul 02 Python
python实现屏保程序(适用于背单词)
Jul 30 Python
python中open函数的基本用法示例
Sep 07 Python
使用Pytorch来拟合函数方式
Jan 14 Python
Pycharm 使用 Pipenv 新建的虚拟环境(图文详解)
Apr 16 Python
python如何提升爬虫效率
Sep 27 Python
Python监听键盘和鼠标事件的示例代码
Nov 18 Python
python中字符串的编码与解码详析
Dec 03 Python
Django实现翻页的示例代码
May 24 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
global.php
2006/12/09 PHP
在PHP中养成7个面向对象的好习惯
2010/01/28 PHP
php版微信公众平台实现预约提交后发送email的方法
2016/09/26 PHP
Docker搭建自己的PHP开发环境
2018/02/24 PHP
PHP生成zip压缩包的常用方法示例
2019/08/22 PHP
javascript中删除指定数组中指定的元素的代码
2011/02/12 Javascript
javascript全局变量封装模块实现代码
2012/11/28 Javascript
jQuery.prototype.init选择器构造函数源码思路分析
2013/02/05 Javascript
JavaScript图片放大技术(放大镜)实现代码分享
2013/11/14 Javascript
javascript使用正则获取url上的某个参数
2014/09/04 Javascript
jQuery中$.each使用详解
2015/01/29 Javascript
javascript如何定义对象数组
2016/06/07 Javascript
浅谈js script标签中的预解析
2016/12/30 Javascript
js中删除数组中的某一元素实例(无下标时)
2017/02/28 Javascript
详解关于vue2.0工程发布上线操作步骤
2018/09/27 Javascript
微信小程序授权登录解决方案的代码实例(含未通过授权解决方案)
2019/05/10 Javascript
微信小程序实现侧边栏分类
2019/10/21 Javascript
JS数组Reduce方法功能与用法实例详解
2020/04/29 Javascript
[03:07]DOTA2英雄基础教程 冰霜诅咒极寒幽魂
2013/12/06 DOTA
[03:04]2018年国际邀请赛典藏宝瓶&莱恩声望物品展示 片尾有彩蛋
2018/06/04 DOTA
[33:23]VG vs Pain 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
python判断一个数是否能被另一个整数整除的实例
2018/12/12 Python
对Python生成汉字字库文字,以及转换为文字图片的实例详解
2019/01/29 Python
python 字符串常用方法汇总详解
2019/09/16 Python
Python 炫技操作之合并字典的七种方法
2020/04/10 Python
Sneaker Studio匈牙利:购买运动鞋
2018/03/26 全球购物
Homestay中文官网:全球寄宿家庭
2018/10/18 全球购物
《望洞庭》教学反思
2014/02/16 职场文书
幼儿园毕业教师感言
2014/02/21 职场文书
集团公司党的群众路线教育实践活动工作总结
2014/03/03 职场文书
彩色的翅膀教学反思
2014/04/25 职场文书
物业客服专员岗位职责
2015/04/07 职场文书
2015年办公室文秘工作总结
2015/04/30 职场文书
2016年基层党支部书记公开承诺书
2016/03/25 职场文书
Python利器openpyxl之操作excel表格
2021/04/17 Python
Redis高并发缓存架构性能优化
2022/05/15 Redis