diff --git a/odoo/addons/base/models/ir_actions.py b/odoo/addons/base/models/ir_actions.py index 414c7c2852d..b9816cfe619 100644 --- a/odoo/addons/base/models/ir_actions.py +++ b/odoo/addons/base/models/ir_actions.py @@ -924,7 +924,9 @@ class IrActionsServer(models.Model): eval_context = self._get_eval_context(action) records = eval_context.get('record') or eval_context['model'] records |= eval_context.get('records') or eval_context['model'] - if records: + if records.ids: + # check access rules on real records only; base automations of + # type 'onchange' can run server actions on new records try: records.check_access_rule('write') except AccessError: