【问题标题】:Sails.js Waterline QuerySails.js 水线查询
【发布时间】:2014-12-14 03:07:37
【问题描述】:

我想做以下事情,比如说一个简单的群聊应用程序,我们有类似的模型

留言

  • 房间:{'model':Room}

房间

  • 用户:{'collection':User}

我想要以下:

给定用户 Bob,获取包含 Bob 的房间中的所有消息。

对此合适的 Waterline 查询是什么?

【问题讨论】:

    标签: javascript node.js sails.js waterline


    【解决方案1】:

    我不确定我知道你对模型结构的意思,但我想你需要这样的东西:

    Message.find({ //Message is your Message model
      room:room_id, //or some other identifier
      content:{contains:'Bob'}
    }).exec(function(error,result){
      if(error){
      // handle error here
      }else{
        var messages = result;
        //do your stuff.
      }
    })
    

    如果我对你的意思有误,请告诉我:)

    【讨论】:

      【解决方案2】:

      我建议将用户(鲍勃)的 ID 和房间的 ID 作为字段添加到消息模型中。例如,这可能包含在 MessageModule.js 中:

      userId : 'string',
      roomId : 'string',
      

      您在一个房间中获取 Bob 的所有消息的查询就像这样简单:

      Messages.find({userId: bobs_user_id, roomId: room_id},
      function(err, messages){
          // all bob's messages from room room_id are available in messages
      });
      

      【讨论】:

        猜你喜欢
        • 2014-09-27
        • 1970-01-01
        • 2015-12-14
        • 1970-01-01
        • 2015-01-03
        • 1970-01-01
        • 1970-01-01
        • 2013-11-22
        • 1970-01-01
        相关资源
        最近更新 更多