Django admin管理工具TabularInline类用法详解


Posted in Python onMay 14, 2020

TabularInline类用于在A页面上编辑B表的字段,举例说明,如果models.py中有Staff、Job两个model:

from django.db import models

class Staff(models.Model):
 name = models.CharField(max_length=10)

class Job(models.Model):
 staff = models.ForeignKey(Staff)
 task = models.CharField(max_length=100)

如果想在Staff页面编辑Job的内容,可以在admin.py中这么写:

from django.contrib import admin

class JobInline(admin.TabularInline):
 model = Job

class StaffAdmin(admin.ModelAdmin):
 inlines = [
  JobInline,
 ]

如果想编辑第三个表,也可以直接加上,比如models.py中职员还有一个工资表Salary:

class Salary(models.Model):
 staff = models.ForeignKey(Staff)
 salary = models.IntegerField(max_length=8)

可以在admin.py中这么写:

from django.contrib import admin

class JobInline(admin.TabularInline):
 model = Job

class SalaryInline(admin.TabularInline):
 model = Salary

class StaffAdmin(admin.ModelAdmin):
 inlines = [
  JobInline,
  SalaryInline
 ]

Django提供了两个InlineModelAdmin的子类,分别是TabularInline和StackedInline,区别在于使用的模板不同。

补充知识:django admin TabularInline raw_id_fields 添加查询 搜索小图标显示

问题:在django app admin TabularInline类使用了下面引用了 raw_id_fields 还是找不到搜索小图标。模型引用的是在别的app的model下。

Django admin管理工具TabularInline类用法详解

Django admin管理工具TabularInline类用法详解

解决方案:yourapp.adminx.py 下面需要注册对应的模型。

Django admin管理工具TabularInline类用法详解

Django admin管理工具TabularInline类用法详解

Django admin管理工具TabularInline类用法详解

以上这篇Django admin管理工具TabularInline类用法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现处理管道的方法
Jun 04 Python
Tensorflow 利用tf.contrib.learn建立输入函数的方法
Feb 08 Python
Python使用wget实现下载网络文件功能示例
May 31 Python
解决Pycharm下面出现No R interpreter defined的问题
Oct 29 Python
在Python中COM口的调用方法
Jul 03 Python
Python 分发包中添加额外文件的方法
Aug 16 Python
如何给Python代码进行加密
Jan 10 Python
python游戏开发的五个案例分享
Mar 09 Python
使用 prometheus python 库编写自定义指标的方法(完整代码)
Jun 29 Python
Pygame框架实现飞机大战
Aug 07 Python
python 实用工具状态机transitions
Nov 21 Python
如何正确理解python装饰器
Jun 15 Python
django创建超级用户时指定添加其它字段方式
May 14 #Python
简单了解python列表和元组的区别
May 14 #Python
Django 解决阿里云部署同步数据库报错的问题
May 14 #Python
Python参数传递实现过程及原理详解
May 14 #Python
Django模板标签{% for %}循环,获取制定条数据实例
May 14 #Python
详解python中groupby函数通俗易懂
May 14 #Python
django 解决扩展自带User表遇到的问题
May 14 #Python
You might like
php实现将wav文件转换成图像文件并在页面中显示的方法
2015/04/21 PHP
php检测图片主要颜色的方法
2015/07/01 PHP
使用PHPMailer发送邮件实例
2017/02/15 PHP
PHP7基于curl实现的上传图片功能
2018/05/11 PHP
游戏人文件夹程序 ver 3.0
2006/07/14 Javascript
jQuery 1.0.2
2006/10/11 Javascript
JS 实现导航栏悬停效果
2013/09/23 Javascript
js设置组合快捷键/tabindex功能的方法
2013/11/21 Javascript
用html5 js实现点击一个按钮达到浏览器全屏效果
2014/05/28 Javascript
封装了一个支持匿名函数的Javascript事件监听器
2014/06/05 Javascript
ExpressJS入门实例
2015/01/14 Javascript
jQuery插件slicebox实现3D动画图片轮播切换特效
2015/04/12 Javascript
jQuery实现分隔条左右拖动功能
2015/11/21 Javascript
jQuery实现智能判断固定导航条或侧边栏的方法
2016/09/04 Javascript
js利用appendChild对标签进行排序的实现方法
2016/10/16 Javascript
深入理解选择框脚本[推荐]
2016/12/13 Javascript
ES6实现的遍历目录函数示例
2017/04/07 Javascript
使用Node.js搭建静态资源服务详细教程
2017/08/02 Javascript
浅谈Node模块系统及其模式
2017/11/17 Javascript
微信小程序loading组件显示载入动画用法示例【附源码下载】
2017/12/09 Javascript
vue.js给动态绑定的radio列表做批量编辑的方法
2018/02/28 Javascript
微信小程序用户位置权限的获取方法(拒绝后提醒)
2018/11/15 Javascript
JSON字符串操作移除空串更改key/value的介绍
2019/01/05 Javascript
Vue+Django项目部署详解
2019/05/30 Javascript
[03:58]2014DOTA2国际邀请赛 龙宝赛后解密DK获胜之道
2014/07/14 DOTA
[04:29]2014DOTA2国际邀请赛 主赛事第三日TOPPLAY
2014/07/21 DOTA
python中lambda与def用法对比实例分析
2015/04/30 Python
编写Python脚本来获取Google搜索结果的示例
2015/05/04 Python
django初始化数据库的实例
2018/05/27 Python
Django 使用Ajax进行前后台交互的示例讲解
2018/05/28 Python
tensorflow 自定义损失函数示例代码
2020/02/05 Python
python使用selenium爬虫知乎的方法示例
2020/10/28 Python
伊芙丽官方旗舰店:中国淑女一线品牌
2017/12/01 全球购物
人力资源主管的岗位职责
2014/03/15 职场文书
详解Python 3.10 中的新功能和变化
2021/04/28 Python
python中的class_static的@classmethod的巧妙用法
2021/06/22 Python