2

我想在我的自定义 Qweb 报告中显示用户上传的图像。

最好的方法是什么?

4

4 回答 4

6

如果您想显示数据库中的图像,您可以像这样使用图像小部件:

<span t-field="o.image_field_name" t-field-options='{"widget": "image"}'/>

如果要显示存储为文件的图像:

<img t-att-src="'/module_name/static/src/img/image_name.png'" />

注意:尊重报价的顺序和类型

于 2015-10-27T09:36:37.353 回答
3

对于从谷歌登陆这里的人......对于数据库中的动态图像,可以使用

<img t-attf-src="data:image/*;base64,{{o.image_field_name}}"/>

...whereo.image_field_name是数据库/模型中的动态字段。我更喜欢<img/>标签而不是<span/>图像。

要显示静态图像,请使用纯 HTML。

<img src="path/to/image/file" alt="Alternate Text"/>

注意:图像中的替代文本属性不会在 PDF 报告中增加价值。当图像丢失时,它们不会出现,就像在 HTML 中一样。

于 2018-08-21T21:22:01.277 回答
1
<tr t-foreach="o.pack_operation_ids" t-as="pack_operation">
    <td>
      <span t-field="pack_operation.product_id.image_small" t-field-options='{"widget": "image"}'/>
    </td>
</tr>
  • QWeb 有一个迭代指令 foreach ,它接受一个返回要迭代的集合的表达式,第二个参数 t-as 提供用于迭代的“当前项”的名称:
  • <span>我使用pack.operation访问product_id的图像
  • 您可以选择图像的大小,例如:image_small 和 image_medium
于 2017-02-25T07:15:01.273 回答
0

有时您需要从 QWeb 调用函数并获取图像。此代码帮助我读取正确的图像字段并使用 QWeb 打印它。

    <t t-foreach="get_image(id)" t-as="image_browse">
         <span t-field="image_browse.image" t-field-options='{"widget": "image"}'/> 
</t>

image_browse 是由 get_image(id) 发送的 id 的浏览

于 2016-01-19T13:51:49.373 回答