【发布时间】:2020-10-23 20:39:11
【问题描述】:
我想要一些设置,比如当我安装模块时,一些字段在一般设置中应该是 true。然后我也可以更改设置,所以我在 res.confing.settings 中设置了默认值。
问题是当我取消选中复选框时它没有取消勾选,因为它已经设置为 True 值。
class ResConfigSettings(models.TransientModel):
_inherit = 'res.config.settings'
group_stock_multi_locations = fields.Boolean('Storage Locations', default=True, implied_group='stock.group_stock_multi_locations',
help="Store products in specific locations of your warehouse (e.g. bins, racks) and to track inventory accordingly.")
group_stock_multi_warehouses = fields.Boolean(
'Multi-Warehouses', default=True, implied_group='stock.group_stock_multi_warehouses')
group_stock_adv_location = fields.Boolean("Multi-Step Routes", default=True,
implied_group='stock.group_adv_location',
help="Add and customize route operations to process product moves in your warehouse(s): e.g. unload > quality control > stock for incoming products, pick > pack > ship for outgoing products. \n You can also set putaway strategies on warehouse locations in order to send incoming products into specific child locations straight away (e.g. specific bins, racks).")
@api.multi
def set_values(self):
super(ResConfigSettings, self).set_values()
self.env['ir.config_parameter'].sudo().set_param(
'group_stock_multi_locations', self.group_stock_multi_locations)
self.env['ir.config_parameter'].sudo().set_param(
'group_stock_multi_warehouses', self.group_stock_multi_warehouses)
self.env['ir.config_parameter'].sudo().set_param(
'group_stock_adv_location', self.group_stock_adv_location)
@api.model
def get_values(self):
res = super(ResConfigSettings, self).get_values()
params = self.env['ir.config_parameter'].sudo()
location = params.get_param(
'group_stock_multi_locations', default=True)
warehouse = params.get_param(
'group_stock_multi_warehouses', default=True)
adv_location = params.get_param(
'group_stock_adv_location', default=True)
res.update({'group_stock_multi_locations': location,
'group_stock_multi_warehouses': warehouse, 'group_stock_adv_location': adv_location})
return res
【问题讨论】:
标签: python odoo config settings default