Skip to Content
Meniu
Trebuie să fiți înregistrat pentru a interacționa cu comunitatea.
Această întrebare a fost marcată
5 Răspunsuri
31013 Vizualizări

I have an array of values which I can use the 

<t t-foreach="docs" t-as="doc">

function. Is there a simple method similar to how you would order an array in python or javascript which I have access to in the Qweb context?

Here is a summary of the code and its printout.

(THIS IS NOT REAL CODE JUST FOR DEMONSTRATION OF CONCEPT)

<t t-esc="doc.field"/> <br/>
<t t-foreach="doc.field" t-as="item">
     <t t-esc="item"/> <br/>
     <t t-esc="item.year"/>
     <br/> <br/> <br/>
</t>

THIS CODE OUTPUTS THIS

model.field(1, 2, 3, 4, 5, 6)

model.field(1,)

1899

model.field(2,)

2015

model.field(3,)

2010

model.field(4,)

2012

model.field(5,)

2011

model.field(6,)

2014

As you can see the years are not in the correct order. What I would like to do would be.

<t t-set="newList" t-value="sorted(doc.field, key=lambda k: k['year'])"/>
<t t-foreach="newList" t-as="newItem">


However I get an error. I think the object none type or something like that.




Imagine profil
Abandonează
Autor

I have an iterable object which is accessible from my report. The problem is that if the user puts the records into the system in the wrong order the report is also printing the lines in the exact same WRONG order. I want to order the records before iterating with t-foreach.

Cel mai bun răspuns

For sorting records, you don't need to set new list. It can be directly done with loop statement like this,

<t t-foreach="doc.field.sorted(key=lambda r: r.year)" t-as="item">
     <t t-esc="item"/> <br/>
     <t t-esc="item.year"/>
     <br/> <br/> <br/>
</t>


I think this will work for you.

Imagine profil
Abandonează
Cel mai bun răspuns

Philip,

You can use python code inside t-esc template.

Which will help you to sort your data.

try this:

<t t-esc="docs.sort()"/>

or if it does not work than you can use parser to do any changes related to your data runtime.

Hope this might help you.

Rgds,

Anil.



Imagine profil
Abandonează
Cel mai bun răspuns
How i can achieve wholes the doc.fields in order to know what field to show in qweb report?
Imagine profil
Abandonează
Related Posts Răspunsuri Vizualizări Activitate
4
ian. 25
43255
0
oct. 24
765
0
oct. 24
5
1
mai 23
2210
5
mai 21
10694