Odoo:从设置页面设​​置模块的默认团队

Odoo: Set default team of a module from settings page

在 res.config 页面上创建了一个视图后,我实现了一个 many2one 字段,它列出了帮助台模块上的现有团队集。我想做的是在自动创建票证时设置默认的帮助台团队(默认情况下这是“客户服务”)。所以基本上,用户在 res.config 视图的自定义字段中选择的团队将是默认的帮助台团队。实现这个的最佳方法是什么?

这可以在操作中使用 context 轻松实现:

<field name="context">{'default_team_id': active_id}</field>

或者您可以使用 lambda 默认函数以编程方式(不建议)执行此操作,如下所示:

team_id = fields.Many2one(comodel_name='helpdesk.team', default=_default_team_id)

def _default_team_id(self):
    team_id = self.env.ref('my_module.best_team_ever').read()[0]
    return team_id
# update using configuration would be:
def _default_team_id(self):
    get_param = self.env['ir.config_parameter'].sudo().get_param
    default_team = get_param('helpdesk.my_custom_default_team')
    return default_team