Pular para o conteúdo
Menu
Esta pergunta foi sinalizada
5 Respostas
31181 Visualizações

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.




Avatar
Cancelar
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.

Melhor resposta

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.

Avatar
Cancelar
Melhor resposta

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.



Avatar
Cancelar
Melhor resposta
How i can achieve wholes the doc.fields in order to know what field to show in qweb report?
Avatar
Cancelar
Publicações relacionadas Respostas Visualizações Atividade
4
jan. 25
43631
0
out. 24
1030
0
out. 24
5
1
mai. 23
2547
5
mai. 21
11024