0
Odoo ORM具有二进制类型字段可容纳图像。这些图像的问题在于,它们是以base64编码的HTML形式提供的。这些加起来HTML大小,不能缓存或通过CDN传递。Odoo显示图像替代
我需要添加上传到模块的图像。这些图像将显示在网站上。有没有其他的方法呢?以下型号代码:
class BannerImage(models.Model):
_name = 'banner.image'
_description = 'Banner Image'
image_desktop = fields.Binary('Desktop Image', attachment=True)
image_mobile = fields.Binary('Mobile Image', attachment=True)
start_date = fields.Date("Start Date")
end_date = fields.Date("End Date")
action = fields.Char("URL")
desc = fields.Text("Additional Description")
banner = fields.Many2one('banner.banner', "Banner")
信息查看后台声明如下:
<record id="action_view_banner_images" model="ir.actions.act_window">
<field name="name">Banner Images</field>
<field name="res_model">banner.image</field>
<field name="view_mode">tree,form</field>
</record>
这些在如下HTML模板中使用:
<div class="banners">
<t t-foreach="banners.images" t-as="banner_image">
<img class="media-object img-responsive" t-attf-src="data:image/*; base64,{{banner_image.image_desktop}}" />
</t>
</div>
有另一种方式来调用这些图像,可能使用网址?
是否有一种方式来获得从模型本身的连接ID然后,它将可能在模板指 – user3295878
得到了它,我使用它是这样的:”叔AttF设定-SRC = /网络/二进制/图像?模型= banner.image&字段= image_desktop&ID = {{banner_image.id}}” – user3295878