Python 如何通过odoo中的多个字段设置默认值?

Python 如何通过odoo中的多个字段设置默认值?,python,xml,openerp,Python,Xml,Openerp,我在'company\u id1'中有以下feeder\u data类。我将选择公司名称。该公司名称必须在data\u value类“company”字段中设置默认值。它应该在该字段中选择名称作为默认值 class feeder_data(osv.Model): _name = "feeder.data" _rec_name= "company_id1" _columns = { 'company_id1': fields.many2one('res.c

我在'company\u id1'中有以下feeder\u data类。我将选择公司名称。该公司名称必须在data\u value类“company”字段中设置默认值。它应该在该字段中选择名称作为默认值

class feeder_data(osv.Model):
    _name = "feeder.data"
    _rec_name= "company_id1"

    _columns = {
        'company_id1': fields.many2one('res.company', 'Substation', required=True),
        'date_of1':fields.datetime('Date',),
        'combine2':fields.one2many('data.value','combine','Details'),
        }
class data_value(osv.Model):
    _name = "data.value"
    _rec_name = "mega_wat"
    _columns={
        'company':field.char('Comapny'),
        'Hours':fields.integer('Folio'),
        'mega_wat':fields.float('Mega Watts'),
        'combine':fields.many2one('feeder.data','details'),
    }

data_value()

用于在型号
馈线数据中设置公司id1的默认值
试着这样做:

def _default_company(self, cr, uid, context=None):
    user = self.pool.get('res.users').browse(cr, uid, uid, context=context)
    if user.company_id:
        return user.company_id.id
    return self.pool.get('res.company').search(cr, uid, [('parent_id', '=', False)])[0]

_defaults = {

'company_id1': _default_company,
}