Как реализовать несколько OrderBy в bookshelfJsMultiple OrderBy() колонка в bookshelfjs
Я могу добавить, как многие OrderBy модели, но в API могут быть любые параметры сортировки как example.com/users?sort=-name,status
и это не должно быть жестко закодированы.
ответ ниже, кажется законным для требования
Knex.js multiple orderBy() columns
но Как реализовать несколько OrderBy в книжной полке?
модели/Users.js
var Bookshelf = require('../../dbConfig').bookshelf;
var User = Bookshelf.Model.extend({
tableName: 'user_table'
});
var Users = Bookshelf.Collection.extend({
model: User
});
module.exports = {
User: User,
Users: Users
};
services.js
var Model = require('./../models/Users');
var express = require('express');
var listAllContentProviders = function (query_params, callback) {
Model.Users
.forge()
.orderBy("name")
.orderBy("-status")
.fetch()
.then(function (collection) {
return callback(null, collection);
})
.catch(function (err) {
return callback(err, null);
});
};
горн (...). запрос (...). изменить это не функция – atjoshi
@atjoshi ... У вас есть решение ....? – Hemakumar
Да .. просто нужно добавить запрос knex как функцию и цикл для полей whetever, которые мы хотим сортировать ... 'query (function (qb) { для (var i в sortArray) { qb.orderBy (sortArray [i] .field, sortArray [i] .direction) } }) ' – atjoshi