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 相关文章推荐
简单介绍Python中的struct模块
Apr 28 Python
Python使用matplotlib绘制动画的方法
May 20 Python
python3利用smtplib通过qq邮箱发送邮件方法示例
Dec 03 Python
python opencv之分水岭算法示例
Feb 24 Python
Windows下安装Django框架的方法简明教程
Mar 28 Python
Python 查看list中是否含有某元素的方法
Jun 27 Python
tensorflow使用神经网络实现mnist分类
Sep 08 Python
Python解析命令行读取参数之argparse模块
Jul 26 Python
Python爬虫爬取Bilibili弹幕过程解析
Oct 10 Python
Python利用逻辑回归分类实现模板
Feb 15 Python
python中数据库like模糊查询方式
Mar 02 Python
哈工大自然语言处理工具箱之ltp在windows10下的安装使用教程
May 07 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
关于在php.ini中添加extension=php_mysqli.dll指令的说明
2007/06/14 PHP
详谈php静态方法及普通方法的区别
2016/10/04 PHP
ZendFramework框架实现连接两个或多个数据库的方法
2016/12/08 PHP
Yii框架中用response保存cookie,用request读取cookie的原理解析
2019/09/04 PHP
JavaScript游戏之优化篇
2010/11/08 Javascript
JS命名空间的另一种实现
2013/08/09 Javascript
jQuery学习笔记之总体架构
2014/06/03 Javascript
javascript从image转换为base64位编码的String
2014/07/29 Javascript
JavaScript中实现依赖注入的思路分享
2015/01/15 Javascript
JavaScript模拟push
2016/03/06 Javascript
jquery 将当前时间转换成yyyymmdd格式的实现方法
2016/06/01 Javascript
针对JavaScript中this指向的简单理解
2016/08/26 Javascript
node.js基于mongodb的搜索分页示例
2017/01/22 Javascript
360提示[高危]使用存在漏洞的JQuery版本的解决方法
2017/10/27 jQuery
vue中利用simplemde实现markdown编辑器(增加图片上传功能)
2019/04/29 Javascript
[05:29]2014DOTA2国际邀请赛 赛后专访:LGDNewbee顺利过关
2014/07/13 DOTA
Python中type的构造函数参数含义说明
2015/06/21 Python
python实现逻辑回归的方法示例
2017/05/02 Python
Python入门之三角函数tan()函数实例详解
2017/11/08 Python
Python读写docx文件的方法
2018/05/08 Python
详解Python if-elif-else知识点
2018/06/11 Python
python虚拟环境迁移方法
2019/01/03 Python
django做form表单的数据验证过程详解
2019/07/26 Python
X/HTML5 和 XHTML2
2008/10/17 HTML / CSS
html2canvas把div保存图片高清图的方法示例
2018/03/05 HTML / CSS
La Senza官网:北美顶尖性感内衣品牌
2018/08/03 全球购物
毕业生找工作推荐信
2013/11/21 职场文书
年终考核评语
2014/01/19 职场文书
公司财务流程之主管工作流程
2014/03/03 职场文书
婚庆司仪主持词
2014/03/15 职场文书
政府采购方案
2014/06/12 职场文书
新党章心得体会
2014/09/04 职场文书
2014年医务科工作总结
2014/12/18 职场文书
《春酒》教学反思
2016/02/22 职场文书
Win11怎么启动任务管理器?Win11启动任务管理器的几种方法
2021/11/23 数码科技
Vue2.0搭建脚手架
2022/03/13 Vue.js