如何通过 odoo 中的 many2one 字段设置默认值?
How to set default value by many2one field in odoo?
我在'company_id1'feeder_dataclass中关注select ] company.That 公司名称的名称必须在 data_value class 'company' 字段设置默认值。它应该有 selected 名称作为默认值
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()
用于在模型feeder.data
中设置company_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,
}
我在'company_id1'feeder_dataclass中关注select ] company.That 公司名称的名称必须在 data_value class 'company' 字段设置默认值。它应该有 selected 名称作为默认值
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()
用于在模型feeder.data
中设置company_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,
}