odoo的@api.装饰器

Odoo自带的api装饰器主要有:model,multi,one,constrains,depends,onchange,returns 七个装饰器。

一、one

one的用法主要用于self为单一记录的情况,意思是指:self仅代表当前正在操作的记录。

二、multi

multi则指self是多个记录的合集。因此,常使用for—in语句遍历self。

multi通常用于:在tree视图中点选多条记录,然后执行某方法,那么那个方法必须用@api.multi修饰,而参数中的self则代表选中的多条记录。

如果仅仅是在form视图下操作,那么self中通常只有当前正在操作的记录。

三、model

 此时的self仅代表模型本身,不含任何记录信息。

四、contrains

 字段的代码约束。

五、depends

depends 主要用于compute方法,depends就是用来标该方法依赖于哪些字段的。

六、onchange

onchange的使用方法非常简单,就是当字段发生改变时,触发绑定的函数。

七、returns

returns的用法主要是用来指定返回值的格式,它接受三个参数,第一个为返回值的model,第二个为向下兼容的method,第三个为向上兼容的method

你可能感兴趣的:(odoo,python)