Odoo 网站 AccessError 未找到 product.template(6,).qty_available 的值

Odoo Website AccessError No value found for product.template(6,).qty_available

我为 website_sale 编辑了 template.xml,以便在产品屏幕上显示可用数量。我通过添加以下代码行成功地做到了这一点:

<p>Available: <span t-esc="'%.0f'%(product.qty_available)"/></p>

现在我可以看到可用的数量,但只能作为管理员(或从设置 > 用户创建的用户),每当我使用从注册按钮创建的另一个用户登录时,我都会收到以下错误:

QWebException: ('AccessError', 'No value found for product.template(6,).qty_available')

知道这可能来自什么吗?也许是因为 'qty_available' 字段只是一个函数字段?或者因为没有为此字段设置安全规则?

谢谢

AccessError 由于访问规则总是发生。

因此,要么 create/modify 访问规则(向 security/ir.model.access.csv 内的所有类型的用户提供读取权限 1,0,0,0),要么只使用 sudo 字段如:

product.sudo().qty_available

注意: 创建安全规则始终是决定性的,因为它提供了对用户非常特殊的访问控制功能。

关于:function/compute field

function/compute field 仅在 search 时创建问题,因为不可存储(store=Flase)是默认的 属性 ,可以通过设置修改store=True 这在你的情况下是不正确的。