从openerp中的many2one关系中获取价值?

时间:2014-11-26 03:33:23

标签: openerp

我的代码:

class name(osv.osv):
        _name='name.model'
        _columns={
                  'name':fields.char('Name',size=32),
                  'ten':fields.char('Ten',size=40),
                  'so':fields.integer('So luong'),
                  'cost':fields.integer('Cost'),
                  }
name()

class first_model(osv.osv):
        _name='first.model'
        _columns={
                  'name':fields.char('Name',size=32),
                  'name1':fields.many2one('name.model','Relationship'),
                  'number':fields.integer('Number'),
                  }
first_model()

class second_model(osv.osv):
        _name='second.model'
        _columns={
                  'name':fields.char('Name',size=50),
                  'name2':fields.many2one('first.model','Choose'),
                  'cost':fields.integer('Cost')         
                  }
        def onchange_cost(self,cr,uid,ids,name2,context=None):
            value={}
            if name2:
                record=self.pool.get('first.model').browse(cr,uid,name2,context=context)
                if record:
                    print record.name1
                    recor_id=self.pool.get('name.model').search(cr,uid,[('name','=',record.name1)],context=context)
                    if recor_id:
                        rec=self.pool.get('name.model').browse(cr,uid,recor_id,context=context)
                        print rec.cost

second_model()

我的问题是,当我尝试从name.model获取成本时,它总是返回空。我检查record.name1的值,它看起来像: name.model(3,) name.model(5,)。如何从name.model获得成本。请帮我解决这个问题。谢谢你:))

抱歉英语不好:((

1 个答案:

答案 0 :(得分:1)

试试这个: -

记录= self.pool.get(' first.model&#39)。浏览(CR,UID,name2.id,上下文=上下文)