跳至内容
菜单
此问题已终结
3 回复
21009 查看

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 ?

形象
丢弃
最佳答案

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)

形象
丢弃
最佳答案

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

形象
丢弃
最佳答案

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>
形象
丢弃

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

相关帖文 回复 查看 活动
1
3月 21
4870
2
10月 20
12940
0
5月 17
2440
0
5月 22
2144
1
4月 22
9385