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使用cx_Oracle模块将oracle中数据导出到csv文件的方法
May 16 Python
Python socket编程实例详解
May 27 Python
pandas or sql计算前后两行数据间的增值方法
Apr 20 Python
Python unittest单元测试框架总结
Sep 08 Python
Python3 读、写Excel文件的操作方法
Oct 20 Python
python提取具有某种特定字符串的行数据方法
Dec 11 Python
Pytorch加载部分预训练模型的参数实例
Aug 18 Python
Python 脚本实现淘宝准点秒杀功能
Nov 13 Python
Django Admin后台添加数据库视图过程解析
Apr 01 Python
python 读取二进制 显示图片案例
Apr 24 Python
Python3获取cookie常用三种方案
Oct 05 Python
pandas:get_dummies()与pd.factorize()的用法及区别说明
May 21 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
某大型网络公司应聘时的笔试题目附答案
2008/03/27 PHP
PHP获取MAC地址的具体实例
2013/12/13 PHP
PHP实现的曲线统计图表示例
2016/11/10 PHP
JQuery datepicker 使用方法
2011/05/20 Javascript
背景图跟随鼠标移动的Mootools插件实现代码
2011/12/12 Javascript
jquery简单瀑布流实现原理及ie8下测试代码
2013/01/23 Javascript
自定义jquery模态窗口插件无法在顶层窗口显示问题
2014/05/29 Javascript
javascript中2个感叹号的用法实例详解
2014/09/04 Javascript
深入分析Cookie的安全性问题
2015/03/01 Javascript
jQuery实现选项联动轮播效果【附实例】
2016/04/19 Javascript
从0开始学Vue
2016/10/27 Javascript
微信小程序canvas.drawImage完全显示图片问题的解决
2018/11/30 Javascript
使用express来代理服务的方法
2019/06/21 Javascript
Vue.js中Line第三方登录api的实现代码
2020/06/29 Javascript
RC4文件加密的python实现方法
2015/06/30 Python
详解Python 序列化Serialize 和 反序列化Deserialize
2017/08/20 Python
python多进程实现文件下载传输功能
2018/07/28 Python
python3.6.3转化为win-exe文件发布的方法
2018/10/31 Python
Python中安装easy_install的方法
2018/11/18 Python
详解python之heapq模块及排序操作
2019/04/04 Python
一篇文章搞定Python操作文件与目录
2019/08/13 Python
使用python客户端访问impala的操作方式
2020/03/28 Python
Pandas中DataFrame基本函数整理(小结)
2020/07/20 Python
django有哪些好处和优点
2020/09/01 Python
css3 实现元素弧线运动的示例代码
2020/04/24 HTML / CSS
html5适合移动应用开发的12大特性
2014/03/19 HTML / CSS
什么是用户模式(User Mode)与内核模式(Kernel Mode) ?
2014/07/21 面试题
个人求职信范文分享
2014/01/06 职场文书
八一建军节活动方案
2014/02/10 职场文书
商务英语广告词大全
2014/03/18 职场文书
党组织公开承诺书
2014/03/29 职场文书
初中国旗下的演讲稿
2014/08/28 职场文书
小学见习报告
2015/06/23 职场文书
2015年小学实验室工作总结
2015/07/28 职场文书
Redisson实现Redis分布式锁的几种方式
2021/08/07 Redis
python运行脚本文件的三种方法实例
2022/06/25 Python