在 odoo13 以前的版本,sudo()后会将用户身份变更为超级用户执行。但经常我们是需要权限执行而不需要变更身份,因此要代码处理这些问题。
在 odoo13 ,完美解决此问题,如果直接 sudo() 则只是提权, 用 sudo(user=n)才以某身份执行。
更重要的是,已经不建议使用 sudo(),要使用 with_user。
这个在处理在线支付时,特别重要,也是踩坑得来的经验。
with_user(SUPERUSER_ID)