字段
class odoo.fields.Field
字段属性参数:
string
:字段标签
help
:提示信息
readonly
:是否只读
required
:是否必填
index
:是否进行索引
default
:默认值
states
:限制仅组内的用户才可访问字段
company_dependent
:是否依赖于当前公司
store
:是否存储在数据库中
compute
:计算该字段的方法名
compute_sudo
:字段是否应超越权限以超级用户进行重新计算
inverse
:推导字段的方法名
search
:实现对字段搜索的方法名
related
:字段名的序列
字符串字段
class odoo.fields.Char
属性参数:
size
:存储大小
trim
:去掉两边空格
translate
:启用值翻译
name = fields.Char('Name', index=True, required=True)
计算属性
【实例】“全名”字段显示完整的层级名称。
name = fields.Char(
'名称',
index=True,
required=True
)
complete_name = fields.Char(
'全名',
compute='_compute_complete_name',
store=True
)
parent_id = fields.Many2one(
'product.category',
'父分类',
index=True,
ondelete='cascade'
)
@api.depends('name', 'parent_id.complete_name')
def _compute_complete_name(self):
for category in self:
if category.parent_id:
category.complete_name = '%s / %s' % (category.parent_id.complete_name, category.name)
else:
category.complete_name = category.name
浮点字段
class odoo.fields.Float
digits
:精确位数(总数, 小数位)
货币字段
class odoo.fields.Monetary