self .write在这段代码中意味着什么?

时间:2013-10-04 04:52:10

标签: python eclipse openerp

我一直在Ubuntu 12.04中开发OpenERP模块。我一直在寻找互联网,因为我是这类开发的新手。我想知道self.write在Python语言下OpenERP开发的意义。如果我能在下面的代码行中得到一些理解的话,我将非常高兴:

self.write(cr, uid, [id], {'image': tools.image_resize_image_big(value)}, context=context)

请尽快帮助,回复。 问候 (阿尔萨兰)

2 个答案:

答案 0 :(得分:3)

self.write()是OpenERP中定义的ORM(对象关系映射)方法。 在OpenERP的结构中,将存在具有字典_columns = {}的类(对象)。使用ORM机制,将在数据库中创建一个与类同名的新表。在_columns = {}字典中,我们给出了一些字段。这些字段是已创建表的列。 例如,下面的代码

class hr_job(osv.osv):

   _columns = {
       'name': fields.char('Job Name', size=128, required=True, select=True),
        }

将在数据库中创建一个名为hr_job的表,并在此表'name'中创建一个字段。 如果在此类中编写'self.write()'方法,它将写入/修改表hr_job中特定字段的值。 在您的情况下,它将更改它所属的表(类)的图像字段的值。希望这会帮助你。

答案 1 :(得分:2)

self是对当前实例的引用。因此self.write是对当前实例类的write方法的引用。据推测,该类是一个类似文件的对象。在不知道你正在处理什么样的课程的情况下,很难说更多。

相关问题