Skip ke Konten
Menu
Pertanyaan ini telah diberikan tanda
3 Replies
20701 Tampilan

Is there a way to print key and value from a python dictionary in loop Qweb?
 For example, if I have a dictionary:
My Code:
<select>
<t t-foreach="[ {key:'1', value:'One'},   {key:'2', value:'Two'}]" t-as="j">
        <option  t-attf-value="j.key"><t t-esc="j.value"/></option>

</t></select>


If i exceute this j.value dict error.

How to print key and value ?

Avatar
Buang
Jawaban Terbai

In Odoo QWeb Template, you don't need to write any extra for the keys, but if you want to write the values, you need to add '_value' right after the alias variable (in your case, the 'j' letter).




(credit goes to 'ifixthat' from St*ckOverfl*w)

Avatar
Buang
Jawaban Terbai

\https://www.youtube.com/watch?v=cPozFRSZRA0&list=UUZVWw0iLx0pFTzUzvl_XpcA&index=3

Avatar
Buang
Jawaban Terbai

Hi Silvia,

To print the key and its value you can try this,

<t t-foreach="course_details" t-as="course">
<t t-esc="course.name"/>
<t t-esc="course.id"/>
</t>
Avatar
Buang

How to create dictionary?

<t t-set="cont" t-value="dict()"/>

<t t-foreach="cont_obj" t-as="ob">

<t t-set="cont" t-value="cont.update({ob.id: ob.name})"/>

</t>

This code is not working. Would you please tell me how can I create a dictionary in qweb.

Hi Abdul,

To create dictionary follow below code

<t t-set="count" t-value="dict()"/>

<t t-foreach="count_obj" t-as="ob">

<t t-set="count" t-esc="count.update({ob.id: ob.name})"/>

</t>

I hope this code help you

Post Terkait Replies Tampilan Aktivitas
1
Mar 21
4652
2
Okt 20
12708
0
Mei 17
2311
0
Mei 22
1941
1
Apr 22
9182