Использование модуля книжного ползунка Модуль NodeJS:
.. Я смог получить базовую paginate работу, где он выбирает все строки из таблицы. Но я не вижу, как добавить предложение WHERE к запросу.
ВОПРОС:
Может кто-нибудь, пожалуйста, поделитесь небольшим примером использования bookhelf-pagemaker с критериями поиска – например, SELECT * FROM user WHERE id> 10 ?
var Bookshelf = require('bookshelf').mysqlAuth; var pagemaker = require('bookshelf-pagemaker')(Bookshelf); var UserDAO = Bookshelf.Model.extend({ tableName: 'user' }); function getRegisteredUsers(pageNum, pageSize, offset, callback) { var args = { params: { start: offset, page: pageNum, length: pageSize }, model: UserDAO }; var resultObj = pagemaker.datatables.paginate(args); resultObj.then(function (result) { console.log('Enter: paginate(args)'); callback(result); }); }
Я добавил эту поддержку в недавно опубликованную версию 0.1.3. Теперь вы можете предоставить оператор where для объекта args, который вы передаете функции paginate. SQL-заявка, которую вы поставляете, будет добавлена с помощью и с помощью фильтра sql, так что вы все равно сможете использовать функции поиска
объект args будет выглядеть так:
var args = { params: { start: offset, page: pageNum, length: pageSize }, model: UserDAO, where: '(id > 10 AND id < 100)' };