我编辑了website_sale的template.xml,以便在产品屏幕上放置数量。我通过添加以下代码行成功地做到了这一点:
<p>Available: <span t-esc="'%.0f'%(product.qty_available)"/></p>
现在我可以看到数量可用但仅作为管理员(或用户从设置&gt;用户创建),每当我使用注册按钮创建的其他用户登录时,我都会收到以下错误:
QWebException:('AccessError','找不到product.template(6,)。qty_available'的值)
任何想法可能来自哪里?也许是因为'qty_available'字段只是一个函数字段?或者因为没有为此字段设置安全规则?
由于
答案 0 :(得分:1)
AccessError
总是会发生。
因此,要么为这样的字段/模型创建/修改访问规则(为1,0,0,0
内的所有类型的用户提供读访问security/ir.model.access.csv
),要么只使用sudo
字段,如:
product.sudo().qty_available
注意:创建安全规则始终是决定因素,因为它提供了访问控制功能,非常特殊的用户可以使用。
关于:function/compute field
:
function/compute field
仅在search
时创建问题,因为不可存储(store=Flase
)是默认属性,可以通过设置store=True
来修改在你的情况下是不正确的。