コンテンツへスキップ
メニュー
この質問にフラグが付けられました
1 返信
1521 ビュー

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!

アバター
破棄
最善の回答

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

アバター
破棄
関連投稿 返信 ビュー 活動
1
12月 24
2288
4
7月 25
1747
1
7月 25
971
1
4月 25
985
0
3月 25
944