我使用models.TransientModel
在Odoo中进行了自定义配置设置,并实现了get_default
和set
功能。我这样做的方式与此问题的答案中显示的相同
Set and get store data Odoo with TransientModel
安装模块后,设置为空。如何在安装时获得该配置设置的默认值?
我已尝试使用init
功能。
def init(self, cr):
config = self.pool.get("ir.config.parameter")
config_value = {
"value": "randomaddress@gmail.com",
"key": "myapplication.email_address"
}
config.create(cr, uid, config_value, context=None)
它没有用。
答案 0 :(得分:2)
您可以通过getter和setter方法执行以下操作:
class ClassName(models.TransientModel):
_inherit = 'res.config.settings'
key = fields.Char()
value = fields.Char()
@api.model
def get_default_key_values(self, fields):
return {
'key': "myapplication.email_address",
'value': "randomaddress@gmail.com",
}
@api.multi
def set_key_values(self):
self.ensure_one()
ICP = self.env['ir.config_parameter']
ICP.set_param('key', self.key)
ICP.set_param('value', self.value)