【问题标题】:sailjs search in many to manysailjs 多对多搜索
【发布时间】:2015-05-08 15:05:23
【问题描述】:

有 2 个具有多对多关联(MongoDB)的模型。我如何在 assoc 中找到。例子 用户模型

name: {
type:'string'
},
groups:{
collection:'Group'
via:'users'
}

组模型

name:{
type:'string'
},
users:{
collection:'User',
via:'groups'
}

当 name=Jack 时,如何找到所有组中的所有用户?

【问题讨论】:

    标签: node.js mongodb sails.js waterline


    【解决方案1】:

    试试:

    Group.find().populate('users', {
        name: 'Jack'
    }).exec(function(err, groups) {
        // ...
    });
    

    UPD:我从您的评论中了解到,您只需要包含 Jack 用户的群组。所以你可以这样做:

    User.find({
        name: 'Jack'
    }).populate('groups').exec(function(err, users) {
        // ...
    });
    

    【讨论】:

    • 这会找到所有组,但只填充用户名 = Jack 的字段
    • @Eugene 更新了答案。如果我正确地发现了您的问题,这可能会对您有所帮助。
    • 如何在当前组中找到名称为 jack 的用户?像这样(蓝图) GET group/:id/users?where={"name":"Jack"} 但这不起作用,只能限制工作
    猜你喜欢
    • 2012-11-11
    • 1970-01-01
    • 1970-01-01
    • 2013-09-30
    • 2015-10-29
    • 2019-05-10
    • 2012-11-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多