Is it possible get variable value from loop?
For example:
<t t-set="flag" t-value="False"/>
<!-- flag now False -->
<tr t-foreach="o.lines" t-as="line">
<td><span t-field="line.name"/></td>
<td><span t-field="line.qty"/></td>
<t t-set="flag" t-value="True"/>
<!-- flag now True -->
</tr>
<!-- flag again False -->
Variable flag inside loop is different from variable flag outide. How send information outside loop?
Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:
- CRM
- e-Commerce
- Akuntansi
- Inventaris
- PoS
- Project
- MRP
Pertanyaan ini telah diberikan tanda
There is a GitHub Issue #4461 on this problem.
UPDATE: A patch to v8 was released and some good programming suggestions were made by Olivier on how to avoid using loops.
Updated my answer with the patch.
Thank you Stephen Mack !
As a workaround we can use:
1) If you can insert output in last iteration then use like:
<t t-set="total" t-value="0" />
<t t-foreach="o.order_line" t-as="line">
<t t-set="total" t-value="total+line.quantity" />
<t t-if="line_last">
<t t-esc="total" />
</t>
</t>
2) If you can't insert output in loop then use like:
<t t-set="total" t-value="sum([line.quantity for line in o.order_line])" />
Those are some ugly workarounds. But thanks for posting them.
I agree :(
Menikmati diskusi? Jangan hanya membaca, ikuti!
Buat akun sekarang untuk menikmati fitur eksklufi dan agar terlibat dengan komunitas kami!
DaftarPost Terkait | Replies | Tampilan | Aktivitas | |
---|---|---|---|---|
Loop through a group list with Qweb in Odoo17
Diselesaikan
|
|
2
Mar 24
|
1340 | |
|
0
Sep 23
|
5005 | ||
How to set t-value from javascript OR as div text
Diselesaikan
|
|
1
Agu 17
|
9674 | |
|
1
Mar 15
|
5956 | ||
How do you use variables in a Qweb loop?
Diselesaikan
|
|
11
Apr 23
|
92229 |
A patch and some ideas on how to calculate totals have been added to the github issue. https://github.com/odoo/odoo/issues/4461#issuecomment-72199618