OpenERP重载create方法

来源:互联网 发布:电脑软件不见了怎么办 编辑:程序博客网 时间:2024/06/05 00:05

 接触OE不久,有了下面的需求,获取页面上填写的数量字段,生成对应的记录数:


     获取页面上的字段:


     方法一:       

[python] view plaincopyprint?在CODE上查看代码片派生到我的代码片
  1. self._columns.items()  

获取到字段的字典,没搞明白是什么东东:

例如:self._columns['tians']

返回值<openerp.osv.fields.float object at 0x7f7b442253d0> 暂时无法获取内容,没搞明白返回的是什么东西,知道的请留言,Thanks!


     方法二:

[python] view plaincopyprint?在CODE上查看代码片派生到我的代码片
  1. _rec_name = 'tians'  
  2.   
  3. elf.pool.get("qingjia.qingjd").name_get(cr, uid, ids, context=context)  

只能获取一个字段,基本满足要求


       重载create方法:

     在自己的模块类中,定义名为create的方法,系统会自动调用

[python] view plaincopyprint?在CODE上查看代码片派生到我的代码片
  1. def create(self, cr, uid, vals, context=None):  
  2.         vals['tians'] = 1024  
  3.         for i in range(0,4):  
  4.             vals['shiyou'] = "this number is : %d" %(i)  
  5.             new_id = super(qingjia_qingjd, self).create(cr, uid, vals, context=context)  
  6.             _logger.error("new id is : %d" % (new_id))  
  7.         #raise Exception(new_id)  
  8.         return new_id  


注意:write()方法是更新,不是插入。返回值是最后插入的记录id,返回其他值,则写入不成功



原文:http://blog.csdn.net/littlebo01/article/details/17588237

0 0
原创粉丝点击