我正在使用快递,knex和书架
我有一个带有一些属性的模型,让我们说:
User {
username(string),
clazz(string),
createdBy(string)(logged-in user),
createDate(datetime) }
我想获取有关已登录用户(createBy,已创建记录)以及分页的用户集合。
我尝试使用以下代码实现相同的功能:
var request = extend({ sort : 'id', order: 'asc', pageSize: 10, page: 1}, setProperties(req.query));
User.forge().orderBy(request.sort, request.order).fetchPage({
pageSize: request.pageSize,
page: request.page
}).then(function(results) {
res.json({
users: results,
totalCount: results.pagination.rowCount
});
});
// tried to initialize fetching event.
var User = bookshelf.Model.extend({
tableName: 'users',
initialize: function() {
this.on('fetching', function(model, cols, options) {
// will put extra constraint to fetch only the records created by logged-in user.
});
});
但是'抓取'事件未被触发,但数据在响应时可用。
如果您可以帮助我,我会非常感激,或者建议我采取相应措施来解决这个问题。
答案 0 :(得分:0)
我的错误!
fetchPage调用fetchAll,它发出事件'fetching:collection'而不是'fetching'。