博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ODOO 新API修饰符
阅读量:2433 次
发布时间:2019-05-10

本文共 743 字,大约阅读时间需要 2 分钟。

http://odoo-new-api-guide-line.readthedocs.io/en/latest/decorator.html

@api.one

one装饰符自动遍历记录集,把self重新定义成当前记录。注意,返回值是一个list. web client有可能不支持该装饰。这时应该用@api.multi修饰函数,函数中可能还需要条用self.ensure_one() 。

@api.multi

self就是当前记录集。

@api.model

该装饰会将旧的API函数转换成带有装饰符的新API函数符号,使得代码可以平滑迁移。

@api.constrains

该装饰确保被修饰的函数在create, write, unlink时被调用。当约束条件满足时,函数应该raise 相应的异常警告消息

@api.depends

@api.depends('name', 'an_other_field')def afun(self):    pass
依赖的任一字段变化时(ORM or Form),触发该函数执行。

@api.onchange

@api.onchange('fieldx')def do_stuff(self):   if self.fieldx == x:      self.fieldy = 'toto'
例子中self是指form中的记录,当在on_change上下文时,所有的工作都是在缓存中进行,所以你可以在函数中直接修改记录集而不用担心会修改数据库, 这是和depends的最大区别。函数返回时将缓存和记录集中的差异返回给form.

@api.noguess

@api.returns

保证返回值的统一。将返回基于原始返回值指定model的记录集。

转载地址:http://mclmb.baihongyu.com/

你可能感兴趣的文章
主流算法:
查看>>
RMI
查看>>
J.U.C之Future
查看>>
缓存思想分析
查看>>
一致性hash
查看>>
J.U.C之ConcurrentHashMap分析
查看>>
J.U.C之CopyOnWriteArrayList
查看>>
J.U.C之Atomic&CAS
查看>>
类的生命周期
查看>>
Joda-Time学习
查看>>
Guava扩展工具包
查看>>
Jedis分片策略-一致性Hash
查看>>
BeanFactory和FactoryBean
查看>>
用户态和内核态的概念区别
查看>>
情境领导力
查看>>
赋能:打造应对不确定性的敏捷组织
查看>>
Java 学习方法浅谈
查看>>
Jsp连接数据库大全
查看>>
WebSphere Application Server 常见问题及解答:安全
查看>>
WebSphere Application Server 常见问题及解答:集群
查看>>