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字典简介以及用法详解
Nov 15 Python
Python+Wordpress制作小说站
Apr 14 Python
Python 3.x读写csv文件中数字的方法示例
Aug 29 Python
在Python 字典中一键对应多个值的实例
Feb 03 Python
python 获取毫秒数,计算调用时长的方法
Feb 20 Python
python批量修改文件夹及其子文件夹下的文件内容
Mar 15 Python
对Python函数设计规范详解
Jul 19 Python
详解python中*号的用法
Oct 21 Python
Python常用模块sys,os,time,random功能与用法实例分析
Jan 07 Python
python pycharm最新版本激活码(永久有效)附python安装教程
Sep 18 Python
Pytorch使用MNIST数据集实现基础GAN和DCGAN详解
Jan 10 Python
python的flask框架难学吗
Jul 31 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
CI框架中集成CKEditor编辑器的教程
2014/06/09 PHP
php中删除、清空session的方式总结
2015/10/09 PHP
PHP中Enum(枚举)用法实例详解
2015/12/07 PHP
Django 中 cookie的使用
2017/08/17 PHP
tp5(thinkPHP5)框架数据库Db增删改查常见操作总结
2019/01/10 PHP
JavaScript的目的分析
2007/01/05 Javascript
jquery 新手学习常见问题解决方法
2010/04/18 Javascript
Jquery获取复选框被选中值的简单方法
2013/07/04 Javascript
禁用页面部分JavaScript不是全部而是部分
2014/09/03 Javascript
JS获取及设置TextArea或input文本框选择文本位置的方法
2015/03/24 Javascript
jquery append 动态添加的元素事件on 不起作用的解决方案
2015/07/30 Javascript
JS基于cookie实现来宾统计记录访客信息的方法
2015/08/04 Javascript
js转html实体的方法
2016/09/27 Javascript
在html中引入外部js文件,并调用带参函数的方法
2016/10/31 Javascript
js 毫秒转天时分秒的实例
2017/11/17 Javascript
JavaScript实现数组全排列、去重及求最大值算法示例
2018/07/30 Javascript
浅谈vue中$event理解和框架中在包含默认值外传参
2020/08/07 Javascript
JavaScript常用工具函数汇总(浏览器环境)
2020/09/17 Javascript
python中实现k-means聚类算法详解
2017/11/11 Python
用python做游戏的细节详解
2019/06/25 Python
Python3内置模块random随机方法小结
2019/07/13 Python
Tornado实现多进程/多线程的HTTP服务详解
2019/07/25 Python
使用Python进行中文繁简转换的实现代码
2019/10/18 Python
pygame实现五子棋游戏
2019/10/29 Python
对Pytorch中Tensor的各种池化操作解析
2020/01/03 Python
简单了解pytest测试框架setup和tearDown
2020/04/14 Python
PyTorch的torch.cat用法
2020/06/28 Python
Python pymsql模块的使用
2020/09/07 Python
意大利中国电子产品购物网站:Geekmall.com
2019/09/30 全球购物
好邻里事迹材料
2014/01/16 职场文书
员工评语大全
2014/01/19 职场文书
会计专业导师推荐信
2014/03/08 职场文书
2014学雷锋活动心得体会
2014/03/10 职场文书
群众路线教育实践活动学习笔记
2014/11/05 职场文书
安全先进个人材料
2014/12/29 职场文书
活动费用申请报告
2015/05/15 职场文书