公共字段属性

来自Odoo大V社-odoo中文开发手册
7017511讨论 | 贡献2017年5月4日 (四) 05:48的版本

(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转至: 导航搜索

字段具有可以在定义它们时设置的属性。 根据字段类型,可以在位置上传递一些属性,而不使用参数关键字,如上一节所示

例如,name = fields.Char('Name',40)可以使用位置参数。 使用关键字参数,同样可以写为name = fields.Char(size = 40,string ='Name')。 有关关键字参数的详细信息,请参阅Python官方文档 https://docs.python.org/2/tutorial/controlflow.html#keyword-arguments

所有可用的属性都可以作为关键字参数传递。 这些是通常可用的属性和相应的参数关键字:

 string是字段默认标签,用于在用户界面中使用。 除了选择和关系字段,它是第一个位置参数,因此大多数时候它不用作关键字参数
 default为字段设置默认值。 它可以是一个静态值,例如一个字符串或一个可调用的引用,一个命名函数或一个匿名函数
(一个lambda表达式)。
 size仅适用于Char字段,并且可以设置允许的最大大值。 目前的最佳做法是不使用它,除非它真的需要
 translate仅适用于Char,Text和Html字段,并使字段内容可翻译,为不同语言保存不同的值。
 help提供显示给用户的工具提示的文本。
 readonly = True使该字段默认不能在用户界面上编辑。 这不是在API级别强制执行; 它只是一个用户界面设置
 index = True将在字段上创建一个数据库索引
 copy = False在使用重复记录功能copy()ORM方法时,字段被忽略。 默认情况下,非关系字段是可复制的。
 groups允许将字段的访问和可见性限制为仅某些组。 它需要以逗号分隔的安全组的XML ID列表,例如groups ='base.group_user,base.group_system'。
 states期望字典映射UI属性的值取决于状态字段的值。 例如:states = {'done':[('readonly',True)]}。 可以使用的属性是readonly,required和invisible。

备注

注意,states字段属性等同于视图中的attrs属性。 注意,视图支持states属性,但是它有不同的用法:它接受逗号分隔的状态列表,以控制元素何时可见。

了完整性,有时在Odoo主要版本之间升级时使用另外两个属性:

 deprecated = True在使用字段时记录警告。
 oldname ='field'用于在较新版本中重命名字段时,使旧字段中的数据自动复制到新字段中。
上一节:基本字段类型
下一节:特殊字段名称