2015-11-19 135 views
0

已解决。请参阅下面的答案。Bookshelf.js限制查询

我只想得到有限的结果。

虽然第二个工作,第一个没有。这里缺少什么?

首先查询

app.get('/ind', function (req, res) { 
    youtube.where('status', 0).fetch(function (qb) { 
    qb.limit(10); 
    }).then(function (data) { 
    data = data.toJSON(); 
    }); 
}); 

第二个查询

app.get('/photos', function (req, res) { 
    user.where('id', 1).fetch({ 
    withRelated: [{ 
     'photos': function (qb) { 
     qb.limit(2); 
     } 
    }] 
    }).then(function (data) { 
    data = data.toJSON(); 
    res.send(data); 
    }); 
}); 

回答

2

解决。

您所需要的只是在fetchAll()之前添加一个查询()并在此查询()内定义您的限制。

app.get('/ind', function (req, res) { 
    youtube.where('status', 0).query(function (qb) { 
    qb.limit(10); 
    }).fetchAll().then(function (data) { 
    data = data.toJSON(); 
    res.render('youtube', { 
     mi: data 
    }); 
    }); 
});