Skip to Content
Menu
This question has been flagged
1 Reply
1495 Views

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!

Avatar
Discard
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

Avatar
Discard
Related Posts Replies Views Activity
1
Dec 24
2274
4
Jul 25
1740
1
Jul 25
962
1
Apr 25
978
0
Mar 25
936