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

Baz*_*... 0 openerp odoo

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

And*_*nov 7

create(cr,uid,values,context = None)

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

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

values是包含要存储在新记录中的值的字典.字典元素在表单中{'field_name': 'field_value',}.

比方说您有一个Student(osv.osv)与模型name,fac_idfac_no领域.您可以在Student课程内的某个地方使用以下调用创建新的学生记录:

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

写(cr,uid,id,值,context = None)

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

self.write(cr, uid, [166, 299], {'fac_id': 21})
Run Code Online (Sandbox Code Playgroud)