Skip to Content
Menu
This question has been flagged
1 Atsakyti
1514 Rodiniai

Hello guys:


I noticed that the column 'qty_available' in the list view of the module product is NOT sortable, and some other columns such as 'cost' 、'forecasted quantity' either.  

I looked into the relevant snippet in list_renderer.js  ,there is a function 'isSortable()' to check with one of properties named 'sortable':

isSortable(column) {
const { hasLabel, name } = column;
const { sortable } = this.fields[name];
const { options } = this.props.list.activeFields[name];
return (sortable || options.allow_order) && hasLabel;

And then I checked the field's properties in the console log and found the value of 'sortable' is 'false' :

 


I knew that computed fields which not stored in database can not be sorted,  but I'm wondering where is the source code determining a field's property 'sortable' ? 


Thanks in advance!

Portretas
Atmesti
Best Answer

Hi,

if a field is computed and not stored (store=False), Odoo will typically set sortable=False automatically because sorting on non-stored fields isn't possible directly in the database.

The method isSortable() in the list_renderer.js checks for this property when rendering the list view in the Odoo web client.

Thanks

Portretas
Atmesti
Related Posts Replies Rodiniai Veikla
1
gruod. 24
2283
4
liep. 25
1747
1
liep. 25
969
1
bal. 25
983
0
kov. 25
943