我到处寻找解决方案,请帮助。
<t t-set="product_image" t-value="aggregated_lines[line]['product_image']"/>
<t t-set="product_name" t-value="aggregated_lines[line]['name']"/>
<td style="float:left;width:30%;text-align: center;">
<img t-att-src="data:image/*;base64,{{product_image}}"
t-att-alt="{{product_name}}" />
</td>
我不能使用变量,如果我直接使用aggregated_lines[line]['product_image']将报告一个哈希集错误
为什么不使用图像url而不是base64编码的二进制内容?url格式为/web/image/{record_model}/{record_id}/{image_field}
。假设您的模型是product.template
,代码将如下所示:
<img t-att-src="'/web/image/product.template/{}/product_image'.format(product_id)" t-att-alt="product_name"/>
你也不需要在t-att-*=""
里面使用{{}}
。您将t-attf-*=""
的语法用于t-att-*=""
。注意额外的f. 因此,如果你想使用图像的二进制内容,你的代码必须像下面这样:
<img t-attf-src="data:image/*;base64,{{product_image}}"
t-attf-alt="{{product_name}}" />