• odoo 装饰器用法@api


    摘自:blog.csdn.net/cmzhuang/article/details/52932883

    @api.one

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

    @api.multi

    self就是当前记录集。

    @api.model

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

    @api.constrains

    该装饰确保被修饰的函数在@api.depends
    afun(self):
        pass
    依赖的任一字段变化时(ORM or Form),触发该函数执行。

    @api.onchange

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

    @api.noguess

    @api.returns

    保证返回值的统一。将返回基于原始返回值指定model的记录集。
  • 相关阅读:
    LeetCode. 476. Number Complement
    LeetCode 172.Factorial Trailing Zeroes
    原码,反码,补码笔记
    python3笔记
    django笔记(python web框架)
    mysql 8.0 主从复制配置
    centos 7系统安装mysql 8.0
    MobaXterm无法退格删除
    Oracle数据泵常用命令
    oracle查年度周末日期
  • 原文地址:https://www.cnblogs.com/1314520xh/p/8536224.html
Copyright © 2020-2023  润新知