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

 更新时间:2019年08月22日 10:49:30   作者:小啊小木头  
今天小编就为大家分享一篇Django admin.py 在修改/添加表单界面显示额外字段的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

问题描述:

我有个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 在修改/添加表单界面显示额外字段的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Python中的异常处理讲解

    Python中的异常处理讲解

    这篇文章介绍了Python中的异常处理,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-05-05
  • Python中类的mro与继承关系详解

    Python中类的mro与继承关系详解

    这篇文章主要介绍了Python中类的mro与继承关系,文章围绕主题展开初步认识mro的解析顺序,具有一定的参考价值。需要的朋友可以参考一下
    2022-07-07
  • python 编写简单网页服务器的实例

    python 编写简单网页服务器的实例

    今天小编就为大家分享一篇python 编写简单网页服务器的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06
  • Python图像增强imgaug详解

    Python图像增强imgaug详解

    Imgaug 是一个开源 python 包,可让你在机器学习实验中增强图像,它适用于各种增强技术,它有一个简单而强大的界面,可以增强图像、地标、边界框、热图和分割图,这篇文章主要介绍了Python图像增强imgaug,需要的朋友可以参考下
    2022-11-11
  • flask上使用websocket的方法示例

    flask上使用websocket的方法示例

    本文主要介绍了flask上使用websocket的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06
  • Python 利用4行代码实现图片灰度化的项目实践

    Python 利用4行代码实现图片灰度化的项目实践

    灰度处理是将彩色图像转换为灰度图像的过程,即每个像素的颜色由红、绿、蓝三个通道的值组成,转换为一个单一的灰度值,本文主要介绍了Python 利用4行代码实现图片灰度化的项目实践,感兴趣的可以了解一下
    2024-04-04
  • Python简明入门教程

    Python简明入门教程

    这篇文章主要介绍了Python简明入门教程,较为详细的分析了Python的基本概念及语法基础,有助于Python初学者更好的掌握Python的基本语法与使用技巧,需要的朋友可以参考下
    2015-08-08
  • Python Pytorch gpu 分析环境配置

    Python Pytorch gpu 分析环境配置

    Pytorch是目前最火的深度学习框架之一,目前也支持了pytorch的GPU加速,所以我就想着,在这两个电脑上装个Pytorch,这篇文章主要介绍了Python Pytorch(gpu)分析环境配置,需要的朋友可以参考下
    2023-04-04
  • python-pandas创建Series数据类型的操作

    python-pandas创建Series数据类型的操作

    这篇文章主要介绍了python-pandas创建Series数据类型的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • Python高级编程之消息队列(Queue)与进程池(Pool)实例详解

    Python高级编程之消息队列(Queue)与进程池(Pool)实例详解

    这篇文章主要介绍了Python高级编程之消息队列(Queue)与进程池(Pool),结合实例形式详细分析了Python消息队列与进程池的相关原理、使用技巧与操作注意事项,需要的朋友可以参考下
    2019-11-11

最新评论