1
0
mirror of https://github.com/laurent22/joplin.git synced 2025-12-02 22:49:09 +02:00

All: Optimised loading of multiple items

This commit is contained in:
Laurent Cozic
2019-07-17 22:50:12 +01:00
parent 687e308a73
commit 38177c7e54
2 changed files with 21 additions and 10 deletions

View File

@@ -149,6 +149,18 @@ class BaseItem extends BaseModel {
return null;
}
static async loadItemsByIds(ids) {
const classes = this.syncItemClassNames();
let output = [];
for (let i = 0; i < classes.length; i++) {
const ItemClass = this.getClass(classes[i]);
const sql = 'SELECT * FROM ' + ItemClass.tableName() + ' WHERE id IN ("' + ids.join('","') + '")';
const models = await ItemClass.modelSelectAll(sql);
output = output.concat(models);
}
return output;
}
static loadItemByField(itemType, field, value) {
let ItemClass = this.itemClass(itemType);
return ItemClass.loadByField(field, value);