本文引用’刘金亮’的<odoo 快速入门与实战>的节选内容,同时也归纳了多为大神和自己(odoo小白)的总结,在文章的结尾,也会列出参考的文献,作者,及作品连接,方便大家查看与学习.会不定时更新此文章内容.
如大家想了解更改相关知识和信息,请上书店及官网购买此书,支持正版.也可以去大神的主页查看更多专业知识,系统的学习odoo.

常用字段:

  • Char/Text:长短不一的文本类型
name = fields.Char(string="猫猫名称", required=True)
description = fields.Text(string="内容简介", help="""向借购买者描述本猫主子内容""")
  • Boolean:布尔值
borrowed = fields.Boolean(string="是否被收养", default=False)
  • Integer:整数
age = fields.Integer(string="年龄")
  • Float: 浮点型,可指定显示位数和小数点,digits是一个元组,前面的数代表该数字的总位数,后面的数字代表小数点的精度
price = fields.Float(string="定价", digits=(7, 2))
  • Date: 日期型
doing_date = fields.Date(string="入店时间")
  • Datetime: 日期+时间型
date_last_borrowed = fields.Datetime("最后被收养时间", index=True, readonly=True)
  • Binary: 二进制型
cache = fields.Binary(attachment=True)
  • Image:图片
_inherit = ['image.mixin']#如不写此段,则无法保存图片,无法显示到视图
image_1921 = fields.Image(string="猫猫样例")
  • Selection:常值单选,(也称下拉列表)
cat_type = fields.Selection([("common", "普通"), ("hardcover", "纯种")],string="品种类型", index=True, default='common')

字段的常用属性:

  • string:前端展现时的字段描述,除了Selection和关系字段外,该属性都是出现再字段内的第一个位置,所以最常见的通过位置使用的属性就是该属性.
name = fields.Char(string="猫猫名称")
  • default:字段的默认值属性.可以时静态值,也可以是匿名函数lambda
borrowed = fields.Boolean(string="是否被收养", default=False)
  • size:仅在Char字段中有效,可用于限制最大字符数,如参数的最大长度
code = fields.Char(size=8)
  • compute:通过函数计算来得出值,与 @api.depends(‘xxxx’) 配合使用
computes=fields.Char(string="电话号码数",required=True,compute="depends_telephone")
#在字段中调用才能生效@api.depends('telephone')def depends_telephone(self):for record in self:record.computes = len(record.telephone)*10
#将电话的长度*10,并返回
#只看代码用法,不必考虑此代码的逻辑,因为此段代码的业务逻辑是瞎编的
  • translate:在Char/Text/Html字段中起作用,使本字段可以被翻译
name = fields.Char(translate=True)
  • help:进行前端展示时,发送给用户的提示信息
description = fields.Text(string="内容简介", help="""向借购买者描述本猫主子内容""")
  • readonly,默认位False,如果为True则在前端不可编辑,在模型层通过函数更改数据不会受影响
borrowed = fields.Boolean(string="是否被收养", default=False)
  • required:设置为True时表示在前端使用文本字段不可以为空.此项设置对模型有作用,相当在数字库字段进行非空设置,使用函数在模型里写入该字段为空的记录也会受其限制.
name = fields.Char(string="猫猫名称", required=True)
  • index:如果设置为True则会在对应的数据库字段上添加索引,会提升该字段进行查询的效率,同时也降低写入数据库表的速度.
variable = fields.Char('Variable', index=True)
  • copy:默认非关系字段为True,如设置为False则在复制记录中,该字段不会被复制.
code = fields.Char(string="猫猫编号",copy=False, help="管理编号,用于快速定位猫猫")
  • groups:该字段属性用于限定该字段的访问安全组,通过外部ID进行指定即可访问的安全组,多个外部ID之间可以用逗号隔开.如:groups=‘base.group.group_portal,base.group_uesr’
slide_partner_ids = fields.One2many('slide.slide.partner', 'channel_id', string="Slide User Data",copy=False, groups='website.group_website_publisher')
  • states:该属性是通过字典来设置UI的相关属性,redonly,required和invisible三个属性都可以通过该属性进行设置,比如将该字段设置为只读:states={‘done’:[‘readonly’,True]}
port = fields.Integer(readonly=True, states={'draft': [('readonly', False)]})
  • deprecated:如果设置为True,则一旦使用该字段,就会在日志中记录警告信息.
website_url = fields.Char(string="Website URL", related='local_url', deprecated=True, readonly=False)
  • oldname:如果一个字段在新版本中更改了名字,则可以使用该属性记录老版本的名字,这种设置可以在复制记录时使得老版本的数据字段自动复制到对应的新名字字段.

特殊字段

保留字段
在模型里,有一些字段是系统保留的,作为开发人员不能修改这些字段.

  • id:记录唯一的标识
  • create_date:记录创建日期
  • create_uid:many2one类型,创建该记录的用户
  • write_date:记录最后修改的时间
  • write_uid:many2one类型,记录最后修改的用户
  • _last_upadte:该字段不糊存储值,仅起到并发检查的作用

关联字段

  • Many2one(一只猫咪只能在一个猫窝)
shift_ids = fields.Many2one('zertow.shift', string='所在猫窝')
  • One2many(一个猫窝可以有多只猫咪,伴随Many2one所存在)
cat_ids = fields.One2many('zertow.cat', 'shift_ids', #注意:这里的shift_ids,与上方Many2one呼应string="猫咪")
  • Many2many(一只猫咪有多个标签,一个标签同样可以附着多只猫咪)
tags_ids = fields.Many2many('zertow.tags', string='猫猫标签')

小白读odoo参考手册--字段相关推荐

  1. oracle jpa字段加注释,JPA注释参考手册.doc

    JPA注释参考手册 JPA注释参考手册(转)?? Table Table用来定义entity主表的name,catalog,schema等属性. 元数据属性说明: name: 表名 catalog: ...

  2. MBED OS 参考手册-边读边翻译,

    参考手册从总体上.运行时.配置.模块技术和API方面对MBED  OS进行了全面的介绍. 在阅读参考手册的同时,翻译了部分资料. 1  概述 1.1  Mbed OS 参考手册 应用代码采用C++编写 ...

  3. Debian参考手册读书摘要

    Debian参考手册笔记 第1章 GNU/Linux教程 1.1.1 欢迎提示 /etc/motd中保存非GUI登录时的欢迎提示信息 Debian GNU/Linux jessie/sid foo t ...

  4. Linux 常用命令参考手册, 非常适合入门, 基本能满足工作日常使用。

    Linux Manual Linux 常用命令参考手册, 非常适合入门, 基本能满足工作日常使用. 截止目前,含有 65+ 命令. 注:这里只列出常用命令, 如果想要更系统的可能需要翻阅官方手册. 目 ...

  5. JAVA程序开发参考手册

    <!--包装数据类型 ->//javalangInteger--整数类 //bitCount方法--获取二进制补码中位的数量 int i = 10;int count = Integer. ...

  6. Lua 5.0 参考手册

    Lua 5.0 参考手册 作者: Roberto Ierusalimschy, Luiz Henrique de Figueiredo, Waldemar Celes Copyright © 2003 ...

  7. 4. GC 算法(实现篇) - GC参考手册

    您应该已经阅读了前面的章节: 垃圾收集简介 - GC参考手册 Java中的垃圾收集 - GC参考手册 GC 算法(基础篇) - GC参考手册 学习了GC算法的相关概念之后, 我们将介绍在JVM中这些算 ...

  8. 操作系统MIT6.S081:[xv6参考手册第4章]->Trap与系统调用

    本系列文章为MIT6.S081的学习笔记,包含了参考手册.课程.实验三部分的内容,前面的系列文章链接如下 操作系统MIT6.S081:[xv6参考手册第1章]->操作系统接口 操作系统MIT6. ...

  9. Sphinx 0.9.9/Coreseek 3.2 参考手册

    Sphinx 0.9.9/Coreseek 3.2 参考手册 Sphinx--强大的开源全文检索引擎,Coreseek--免费开源的中文全文检索引擎 Copyright © 2006-2010 (co ...

最新文章

  1. 淘宝海量数据库之二:一致性选择
  2. eclipse使用git合并_Eclipse中使用git
  3. 计算机组成原理学习1习题1
  4. winform 打包
  5. 前端性能优化-减少HTTP请求数
  6. ROS2学习(十六).ROS概念 - 构建系统
  7. 根据个人亲身进阶架构师经历系统构建20大进阶架构师专题!
  8. 注意升级Oracle 19c:SE2标准版不再支持RAC
  9. [转] new 和delete
  10. Asp.Net Mvc3.0(MEF依赖注入理论)
  11. CRC 冗余校验计算
  12. PS使用:windows解决Adobe Photoshop 2020(PS2020)闪退
  13. ios9提取安装包ipa_iOS获取App ipa包
  14. js简单图解冒泡排序
  15. Mysql性能优化:什么是索引下推?
  16. 重回第一!没想到300w了...
  17. webfont应用系列(二)如何制作图标字体?
  18. 计算机网络 中 网络层
  19. Android开源项目学习 | QKSMS短信app
  20. CodeForces - 510A 蛇形图案输出 难度:C++入门 复杂度:简单 翻译难度:一般

热门文章

  1. 盗墓小说和西高穴 真真假假曹操墓
  2. BCG网格控件单独设置颜色
  3. python dataframe创建指定大小_pandas DataFrame创建方法的方式
  4. N型半导体和P型半导体
  5. 【vcpkg】下载软件包时的提示
  6. 2020国赛C思路分析:中小微企业的信贷决策
  7. Oracle的学习路径与方法讨论
  8. linux越狱80x24,用Cydia Impactor 免越狱安装未签名APP方法[日常] | 贝贝吧
  9. UFI 命令 返回值(UFI Command Specification)
  10. 创造属于自己的注册码