Sailsjs-Waterline:填充后如何过滤?

时间:2015-03-22 16:29:42

标签: sails.js populate waterline

我使用sailjs + waterline,如何在填充模型后过滤数据?在这里,我尝试我的代码,并没有工作:

Approductbranch
    .find({deleted:1})
    .populate("mproduct_id",{where:{deleted:1}})
    .paginate({page:currpage,limit:utils.RowPerPage})
    .exec(callback)

在上面的代码中,我想像这样执行sql:

select * from approductbranch a
inner join mproduct a
on a.id = a.mproduct_id
where a.deleted = 1
and b.deleted = 1

怎么做?谢谢! :)

3 个答案:

答案 0 :(得分:1)

好问题。

目前还没有办法直接执行此操作,但Waterline存储库中有一个非常出色的feature request,您可以分享您的想法。

答案 1 :(得分:0)

您可以在填充之前过滤一组值。这样做效率更高,因为您没有获得超出您需要的值:https://github.com/balderdashy/sails-docs/blob/master/reference/waterline/queries/populate.md

答案 2 :(得分:0)

我认为你可以这样做:

Approductbranch
.find({deleted:1})
.populate("mproduct_id",{deleted:1, skip:currpage * utils.RowPerPage, limit:utils.RowPerPage})
.exec(callback)

没关系!