odoo10-增删改查操作

增加记录:

def create(self, cr, uid, vals, context={}):返回新建记录的id

self:当前操作的一个或多个纪录

cr、uid:用法暂不清楚

vals:是一个字典(dict),类似{'name_of_the_field':value, ...}。其中,键是字段名,值是字段值。

context:用法不清楚


查找记录:

def search(self, cr, uid, args, offset=0, limit=2000):返回符合检索条件的记录的id集合

·args: 包含检索条件的tuples列表,格式为: [('name_of_the_field', 'operator', value),...]。可用的operators有:

=, >, <, <=, >=

in

like, ilike

child_of

· offset (optional): 偏移记录数,若offset=5,则检索结果的前5条记录不返回

· limit (optional): 返回结果的最大记录数。


查找记录指定字段:

def read(self, cr, uid, ids, fields=None, context={}):返回读取结果的字典列表,形如 [{'name_of_the_field':value, ...}, ...],列表(list)中每个元素是字典(dict),每个字典保存了对应记录的指定字段值

·ids: 待读取的记录的id列表,形如[1,3,5,...]

· fields (optionnal): 待读取的字段值,不指定的话,读取所有字段。


查找记录,并返回对象:

def browse(self, cr, uid, select, offset=0, limit=2000):返回select指定的id或id集合对应的对象或对象列表。

·select: 待返回的对象id,可以是一个id,也可以是一个id 列表。

· offset (optional): 参见search方法。

· limit (optional): 参见search方法。

解析:

browse方法浏览对象及其关联对象。从数据库中读取指定的记录,并生成对象返回。和read等方法不同,本方法不是返回简单的记录,而是返回对象。返回的对象可以直接使用"."存取对象的字段和方法,形如"object.name_of_the_field",关联字段(many2one等),也可以通过关联字段直接访问“相邻”对象。例如:

addr_obj = self.pool.get('res.partner.address').browse(cr, uid, contact_id)

nom = addr_obj.name

compte =addr_obj.partner_id.bank

这段代码先从对象池中取得对象res.partner.address,调用它的方法browse,取得id=contact_id的对象,然后直接用"."取得"name"字段以及关联对象patner的银行(addr_obj.partner_id.bank)。


修改记录指定字段的值:

def write(self, cr, uid, ids, vals, context={}):修改一个或多个记录

· ids: 待修改的记录的id列表。

· vals: 待保存的字段新值,是一个字典,形如: {'name_of_the_field': value, ...}。

· context (optional): 参见create方法。

修改成功,则该函数返回True,否则返回False


删除记录:

def unlink(self, cr, uid, ids):删除指定id集合的记录

· ids: 待删除的记录的id列表。

删除成功,则该函数返回True,否则返回False


参考文章:http://blog.sina.com.cn/s/blog_57c1d2540101l4ht.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,347评论 19 139
  • 记录集 model的数据是通过数据集合的形式来使用的,定义在model里的函数执行时它们的self变量也是一个数据...
    XiaoHaiYang阅读 17,024评论 0 16
  • ORM应用逻辑-业务处理 前面的章节我们学习了利于Odoo的视图来构建用户前端界面。本章介绍Odoo的后台业务逻辑...
    F4A3阅读 4,210评论 0 3
  • 前段时间我女儿追鹿晗主演的《择天记》,我也跟着看了起来;剧情经不起推敲,打开字幕吐槽声一片,大部分追剧的人都是冲着...
    我向阳而生阅读 3,813评论 3 0
  • 一年梦想: 1.希望能影响到1000个家庭,通过婕斯给他们带来健康。 2.自己坚持练瑜伽,让身体柔韧度增加 3.读...
    吴若源1阅读 2,241评论 0 1