首页 文章

如何在Odoo的Custom QWeb报告中打印图像?

提问于
浏览
2

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

哪种方法最好?

4 回答

  • 1

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

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

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

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

    Note :尊重报价的顺序和类型

  • 0
    <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-提供用于迭代的"current item"的名称:

    • <span> 我使用 pack.operation 访问 product_id 的图像

    • 您可以选择图像的大小,如:image_small和image_medium

  • 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的浏览

  • 5

    对于从Google登陆的人...对于来自数据库的动态图像,可以使用

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

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

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

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

    Note: 图像中的备用文本属性确实在PDF报告中添加了值 . 它们不会在图像丢失时显示,就像在HTML中一样 .

相关问题