什么是openerp框架中的write()函数?

时间:2014-02-05 11:03:36

标签: openerp odoo

我是openerp框架的初学者 我想知道如何使用write()和create()方法,它的目的是什么?我已经阅读了openerp中的文档,但我仍然没有得到它。

2 个答案:

答案 0 :(得分:7)

创建(cr,uid,values,context = None)

创建新记录。每次单击“新建”按钮时都会调用此方法,并通过“保存”按钮保存。

参数cruid是众所周知的 - 数据库游标对象和执行操作的用户的ID。

values是一个字典,包含要存储在新记录中的值。字典元素的格式为{'field_name': 'field_value',}

假设您的Student(osv.osv)模型包含namefac_idfac_no字段。您可以使用Student类内的以下调用创建新学生的记录:

new_student_id = self.create(cr, uid, {'name': 'Joe Doe', 
                                       'fac_id': 15, 
                                       'fac_no': '161832'})

写(cr,uid,ids,values,context = None)

create()类似,但更新现有记录。要更新的记录由ids参数定义。如果您想使用ID 166和299更新学生的fac_id字段,可以通过以下方式进行更新:

self.write(cr, uid, [166, 299], {'fac_id': 21})

答案 1 :(得分:1)

创建 当用户在OpenERP中为特定模型保存记录时,ORM会调用create方法。

<强>写: 一旦创建了记录,然后如果用户修改了&amp;保存记录调用write方法的时间。

这是create和write方法的基本区别。

下载OpenERP Developer Memento,它会对您有所帮助!