Django admin.py 在修改/添加表单界面显示额外字段的方法


Posted in Python onAugust 22, 2019

问题描述:

我有个blogextra表继承自blog,现在我想在blog的admin管理change界面显示对应的blogextra字段

解决方法:

可以使用admin.py的inline内联方法

代码:

models.py

from django.db import models

# Create your models here.


class Blog(models.Model):
  Name = models.CharField(max_length=350)
  def __unicode__(self):
    return str("Name:"+self.Name)

class BlogExtra(Blog):
  NameTwo = models.CharField(max_length=350)
  NameThree = models.CharField(max_length=350)
  def __unicode__(self):
    return str("Name:"+self.Name+" NameTwo:"+self.NameTwo+" NameThree:"+self.NameThree)

admin.py

# conding = UTF-8

from django.contrib import admin

from blogs.models import *

class BlogExtraInline(admin.StackedInline):
  model = BlogExtra
  fields = ['NameTwo']  #只显示NameTwo这个字段


class BlogAdmin(admin.ModelAdmin):
  list_display = ('id', 'Name')  

  def get_form(self, request, obj=None, **args):
    defaults = {}
    if obj is not None:
      if (len(BlogExtra.objects.filter(id=obj.id)) == 1):
        self.inlines = [BlogExtraInline]    #设置内联
      else:
        self.inlines = []           #如果不是继承,就取消设置

    defaults.update(args)
    return super(BlogAdmin, self).get_form(request, obj, **defaults)


admin.site.register(Blog, BlogAdmin)

展示效果:

正常无继承的:

Django admin.py 在修改/添加表单界面显示额外字段的方法

存在继承的(显示额外字段):

Django admin.py 在修改/添加表单界面显示额外字段的方法

以上这篇Django admin.py 在修改/添加表单界面显示额外字段的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python将xml xsl文件生成html文件存储示例讲解
Dec 03 Python
几个提升Python运行效率的方法之间的对比
Apr 03 Python
python获取指定目录下所有文件名列表的方法
May 20 Python
Python制作动态字符图的实例
Jan 27 Python
Linux上使用Python统计每天的键盘输入次数
Apr 17 Python
10个python3常用排序算法详细说明与实例(快速排序,冒泡排序,桶排序,基数排序,堆排序,希尔排序,归并排序,计数排序)
Mar 17 Python
通过自学python能找到工作吗
Jun 21 Python
Python 合并拼接字符串的方法
Jul 28 Python
详解tensorflow之过拟合问题实战
Nov 01 Python
详解Python调用系统命令的六种方法
Jan 28 Python
深度学习小工程练习之垃圾分类详解
Apr 14 Python
Python OpenCV超详细讲解调整大小与图像操作的实现
Apr 02 Python
Django stark组件使用及原理详解
Aug 22 #Python
Python学习笔记之字符串和字符串方法实例详解
Aug 22 #Python
Python学习笔记之列表和成员运算符及列表相关方法详解
Aug 22 #Python
Django上线部署之IIS的配置方法
Aug 22 #Python
对python中UDP,socket的使用详解
Aug 22 #Python
python3的url编码和解码,自定义gbk、utf-8的例子
Aug 22 #Python
Python学习笔记之集合的概念和简单使用示例
Aug 22 #Python
You might like
模仿OSO的论坛(五)
2006/10/09 PHP
PHP操作XML作为数据库的类
2010/12/19 PHP
php数组保存文本与文本反编成数组实例
2014/11/13 PHP
深入讲解PHP Session及如何保持其不过期的方法
2015/08/18 PHP
各种效果的jquery ui(接口)介绍
2008/09/17 Javascript
js post方式传递提交的实现代码
2010/05/31 Javascript
js获取location.href的参数实例代码
2013/08/02 Javascript
JavaScript 基本概念
2015/01/20 Javascript
jQuery插件MixItUp实现动画过滤和排序
2015/04/12 Javascript
javascript insertAfter()定义与用法示例
2016/07/25 Javascript
vue.js内部自定义指令与全局自定义指令的实现详解(利用directive)
2017/07/11 Javascript
浅谈React 服务器端渲染的使用
2018/05/08 Javascript
AngularJS与BootStrap模仿百度分页的示例代码
2018/05/23 Javascript
Vue2.0+Vux搭建一个完整的移动webApp项目的示例
2019/03/19 Javascript
深入浅析nuxt.js基于ssh的vue通用框架
2019/05/21 Javascript
Vue+Node服务器查询Mongo数据库及页面数据传递操作实例分析
2019/12/20 Javascript
react使用antd表单赋值,用于修改弹框的操作
2020/10/29 Javascript
vue打包通过image-webpack-loader插件对图片压缩优化操作
2020/11/12 Javascript
[02:51]DOTA2英雄基础教程 风暴之灵
2013/12/23 DOTA
一篇文章入门Python生态系统(Python新手入门指导)
2015/12/11 Python
Python实现基本数据结构中栈的操作示例
2017/12/04 Python
Python简单实现词云图代码及步骤解析
2020/06/04 Python
keras的ImageDataGenerator和flow()的用法说明
2020/07/03 Python
如何教少儿学习Python编程
2020/07/10 Python
HTML5使用ApplicationCache接口实现离线缓存技术解决离线难题
2012/12/13 HTML / CSS
萌新的HTML5 入门指南
2020/11/06 HTML / CSS
北美三大旅游网站之一:Travelocity加拿大
2016/08/20 全球购物
英国在线房屋中介网站:Yopa
2018/01/09 全球购物
Spartoo荷兰:鞋子、包包和服装
2018/07/12 全球购物
新西兰最大的连锁超市:Countdown
2020/06/04 全球购物
本科毕业生专业自荐书范文
2014/02/05 职场文书
三提三创主题教育活动查摆整改措施
2014/10/25 职场文书
失恋33天观后感
2015/06/11 职场文书
2016形势与政策学习心得体会
2016/01/12 职场文书
高一作文之暖冬
2019/11/09 职场文书
阿里面试Nacos配置中心交互模型是push还是pull原理解析
2022/07/23 Java/Android