Skip to Content
เมนู
คุณต้องลงทะเบียนเพื่อโต้ตอบกับคอมมูนิตี้
คำถามนี้ถูกตั้งค่าสถานะ
2 ตอบกลับ
9345 มุมมอง

Hi !

In my website, I declared a field like this

<template id="transporter_image" inherit_id="website_sale.payment">
<xpath expr="//div[@id='delivery_carrier']//input" position="after">
<span itemprop="image" t-field="delivery.partner_id.image"
t-field-options='{"widget": "image"}' style="display: inline-block;"/>
</xpath>
</template>

As Admin, this renders like

<span itemprop="image" style="display: inline-block;" data-oe-id="864"
data-oe-source-id="841" data-oe-xpath="/data/xpath/span"
data-oe-model="ir.ui.view" data-oe-field="arch" data-oe-type="image"
data-oe-expression="delivery.partner_id.image" data-oe-translate="0">
<img class="img img-responsive" src="/website/image/res.partner/6_8994a20/image" style="">
</span>

As an external user, it looks like this:

<span itemprop="image" style="display: inline-block;">
<img class="img img-responsive" src="/website/image/res.partner/6_8994a20/image" style="">
</span>

and thus, the image is not being rendered.


How to solve this ?

อวตาร
ละทิ้ง
ผู้เขียน คำตอบที่ดีที่สุด

Workaround that does the job:

<template id="transporter_image" inherit_id="website_sale.payment">
<xpath expr="//div[@id='delivery_carrier']//input" position="after">
<img itemprop="image" class="img img-responsive" style="display: inline-block;"
t-att-src="'data:image/png;base64,' + delivery.partner_id.image"/>
</xpath>
</template>

I will use it until I find a better alternative.

อวตาร
ละทิ้ง

Good answer

คำตอบที่ดีที่สุด

Hi 

In fact the correct code is

​t-att-src="'data:image/png;base64,' + str(delivery.partner_id.image)[2:-1]"/>

อวตาร
ละทิ้ง
Related Posts ตอบกลับ มุมมอง กิจกรรม
2
ธ.ค. 19
4352
2
ก.ย. 21
6267
Admin User Missing แก้ไขแล้ว
2
ก.ย. 21
7140
0
ต.ค. 16
3774
6
ม.ค. 25
118885