django 模型中的计算字段实例


Posted in Python onMay 19, 2020

models.py

class Person(models.Model):
  family_name= models.CharField(max_length=20, verbose_name='姓')
  given_name = models.CharField(max_length=20, verbose_name='名')
  def name(self): # 计算字段要显示在修改页面中只能定义在只读字段中(否则不显示):readonly_fields = ('sc',)
    return '%s,%s' % (self.family_name, self.given_name)
  name.short_description = '全名' # 用于显示时的名字 , 没有这个,字段标题将显示'name'
  def __str__(self):
    return "%s %s " % (self.family_name, self.given_name)

admin.py

class PersonAdmin(admin.ModelAdmin):
  readonly_fields = ('name',)

admin.site.register(Person, PersonAdmin)

也可以把计算字段写在modelAdmin中

models.py

class Person(models.Model):
  family_name= models.CharField(max_length=20, verbose_name='姓')
  given_name = models.CharField(max_length=20, verbose_name='名')

  def __str__(self):
    return "%s %s " % (self.family_name, self.given_name)

admin.py

class PersonAdmin(admin.ModelAdmin):
  
  def name(self,obj): 
    # 这个方法会得到两个参数,第一个是类本身的一个实例(app.PersonAdmin),第二个是这个类管理的模型实例(Person)
    return '%s,%s' % (self.family_name, self.given_name)

  name.short_description = '全名' # 用于显示时的名字 , 没有这个,字段标题将显示'name'
  readonly_fields = ('name',)

admin.site.register(Person, PersonAdmin)

补充知识:django如何在 search_fields 中包含外键字段

在search_fields中加入一个外键的名字是不能查询的,要写成(外键名__外键中的字段名)的形式.

search_fields = ('attributename','goodsclass__cn')
# goodsclass__cn 就可以搜索外键的名字中有搜索词的条目了,
# 比如搜索手机的分辨率,而不是电脑的分辨率,就可以搜索'手机 分辨率'

以上这篇django 模型中的计算字段实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
下载安装setuptool和pip linux安装pip    
Jan 24 Python
Python标准库sched模块使用指南
Jul 06 Python
python+selenium识别验证码并登录的示例代码
Dec 21 Python
对python添加模块路径的三种方法总结
Oct 16 Python
在python中按照特定顺序访问字典的方法详解
Dec 14 Python
详解python使用turtle库来画一朵花
Mar 21 Python
Python切片操作去除字符串首尾的空格
Apr 22 Python
python字符串切割:str.split()与re.split()的对比分析
Jul 16 Python
Python修改列表值问题解决方案
Mar 06 Python
使用SimpleITK读取和保存NIfTI/DICOM文件实例
Jul 01 Python
Python3爬虫中pyspider的安装步骤
Jul 29 Python
Python还能这么玩之只用30行代码从excel提取个人值班表
Jun 05 Python
Django获取model中的字段名和字段的verbose_name方式
May 19 #Python
Python日志处理模块logging用法解析
May 19 #Python
基于PyQT实现区分左键双击和单击
May 19 #Python
Python更换pip源方法过程解析
May 19 #Python
解决Django Haystack全文检索为空的问题
May 19 #Python
浅谈django 重载str 方法
May 19 #Python
django admin管理工具自定义时间区间筛选器DateRangeFilter介绍
May 19 #Python
You might like
ThinkPHP提示错误Fatal error: Allowed memory size的解决方法
2015/02/12 PHP
JavaScript实现滚动栏效果的方法
2015/04/27 PHP
laravel5.4利用163邮箱发送邮件的步骤详解
2017/09/22 PHP
php下的原生ajax请求用法实例分析
2020/02/28 PHP
鼠标移动到一张图片时变为另一张图片
2006/12/05 Javascript
CutePsWheel javascript libary 控制输入文本框为可使用滚轮控制的js库
2010/02/07 Javascript
JQuery获取与设置HTML元素的内容或文本的实现代码
2014/06/20 Javascript
Javascript基础教程之变量
2015/01/18 Javascript
基于jQuery和CSS3制作响应式水平时间轴附源码下载
2015/12/20 Javascript
javascript表单事件处理方法详解
2016/05/15 Javascript
Vue.js组件tree实现无限级树形菜单
2016/12/02 Javascript
JS实现点击Radio动态更新table数据
2017/07/18 Javascript
js中的 || 与 && 运算符详解
2018/05/24 Javascript
vue路由事件beforeRouteLeave及组件内定时器的清除方法
2018/09/29 Javascript
webpack 静态资源集中输出的方法示例
2018/11/09 Javascript
[03:14]2014DOTA2西雅图国际邀请赛 EG战队巡礼
2014/07/07 DOTA
[49:42]DOTA2上海特级锦标赛主赛事日 - 3 胜者组第二轮#2Secret VS EG第一局
2016/03/04 DOTA
python文件操作相关知识点总结整理
2016/02/22 Python
Python找出list中最常出现元素的方法
2016/06/14 Python
对python遍历文件夹中的所有jpg文件的实例详解
2018/12/08 Python
Python-while 计算100以内奇数和的方法
2019/06/11 Python
Django生成PDF文档显示在网页上以及解决PDF中文显示乱码的问题
2019/07/04 Python
利用Tensorboard绘制网络识别准确率和loss曲线实例
2020/02/15 Python
python 截取XML中bndbox的坐标中的图像,另存为jpg的实例
2020/03/10 Python
Python Tkinter实例——模拟掷骰子
2020/10/24 Python
Html5 new XMLHttpRequest()监听附件上传进度
2021/01/14 HTML / CSS
意大利大型购物中心:Oliviero.it
2017/10/19 全球购物
牵手50香港:专为黄金岁月的单身人士而设的交友网站
2020/08/14 全球购物
护理专业本科生自荐信
2013/10/01 职场文书
酒店实习个人鉴定
2013/12/07 职场文书
2014新年寄语
2014/01/20 职场文书
教师开学感言
2014/02/14 职场文书
中学生学雷锋活动心得体会
2014/03/10 职场文书
经销商订货会主持词
2014/03/27 职场文书
2014迎接教师节演讲稿
2014/09/10 职场文书
CSS3常见动画的实现方式
2021/04/14 HTML / CSS