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 正则表达式 概述及常用字符
May 04 Python
Python 时间操作例子和时间格式化参数小结
Apr 24 Python
用Python展示动态规则法用以解决重叠子问题的示例
Apr 02 Python
Python结巴中文分词工具使用过程中遇到的问题及解决方法
Apr 15 Python
Python 含参构造函数实例详解
May 25 Python
Python 用Redis简单实现分布式爬虫的方法
Nov 23 Python
Python数据结构与算法之字典树实现方法示例
Dec 13 Python
Ubuntu下使用Python实现游戏制作中的切分图片功能
Mar 30 Python
10 行Python 代码实现 AI 目标检测技术【推荐】
Jun 14 Python
pytorch中的embedding词向量的使用方法
Aug 18 Python
python基本算法之实现归并排序(Merge sort)
Sep 01 Python
解决python绘图使用subplots出现标题重叠的问题
Apr 30 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
天使彦史上最神还原,性别曝光的那一刻,百万网友恋爱了
2020/03/02 国漫
php数组函数序列之end() - 移动数组内部指针到最后一个元素,并返回该元素的值
2011/10/31 PHP
Laravel框架中自定义模板指令总结
2017/12/17 PHP
Windows上php5.6操作mongodb数据库示例【配置、连接、获取实例】
2019/02/13 PHP
不用MOUSEMOVE也能滑动啊
2007/05/23 Javascript
Mootools 1.2教程 滑动效果(Slide)
2009/09/15 Javascript
基于jQuery的计算文本框字数的代码
2012/06/06 Javascript
jquery的live使用注意事项
2014/02/18 Javascript
了解Javascript的模块化开发
2015/03/02 Javascript
JQuery Mobile 弹出式登录框的实现方法
2016/05/28 Javascript
Bootstrap弹出框(modal)垂直居中的问题及解决方案详解
2016/06/12 Javascript
微信公众平台开发教程(四) 实例入门:机器人回复(附源码)
2016/12/02 Javascript
js 将input框中的输入自动转化成半角大写(税号输入框)
2017/02/16 Javascript
JS 验证密码 不能为空,必须含有数字、字母、特殊字符,长度在8-12位
2017/06/21 Javascript
react开发教程之React 组件之间的通信方式
2017/08/12 Javascript
Vue单页面应用保证F5强刷不清空数据的解决方案
2018/01/31 Javascript
layui字体图标 loading图标静止不旋转的解决方法
2019/09/23 Javascript
在Python中使用swapCase()方法转换大小写的教程
2015/05/20 Python
python中matplotlib实现最小二乘法拟合的过程详解
2017/07/11 Python
利用python获取当前日期前后N天或N月日期的方法示例
2017/07/30 Python
python 基本数据类型占用内存空间大小的实例
2018/06/12 Python
Python判断远程服务器上Excel文件是否被人打开的方法
2020/07/13 Python
Python 中如何写注释
2020/08/28 Python
python 基于Apscheduler实现定时任务
2020/12/15 Python
css3的过滤效果简单实例
2016/08/03 HTML / CSS
html5用video标签流式加载的实现
2020/05/20 HTML / CSS
中国跨境在线时尚零售商:Bellelily
2018/04/06 全球购物
用Python写一个for循环的例子
2016/07/19 面试题
《临死前的严监生》教学反思
2014/02/13 职场文书
党支部公开承诺书
2014/03/28 职场文书
音乐幼师求职信
2014/07/09 职场文书
审计局2014法制宣传日活动总结
2014/11/01 职场文书
给老婆的保证书
2015/01/16 职场文书
小兵张嘎观后感
2015/06/03 职场文书
喜迎建国70周年:有关爱国的名言名句
2019/09/24 职场文书
LeetCode189轮转数组python示例
2022/08/05 Python