从本机查询中的sails中选择MySql db

时间:2014-12-19 02:43:56

标签: mysql node.js sails.js

我想获得结果:group +属于当前组的消息数 例如:

webdevelopment - 34 messages

如果不执行_.each

,如何才能获得相同的结果

我如何才能获得一个查询结果 我用了MySql, 我的代码是这样的

 Group.find().exec(function (err, groups) {
        if (err)
            return next(err);
        _.each(groups, function (grouper) {
            Messages.count({
                groupId : grouper.groupId,
            }).exec(function (err, found) {
                console.log(grouper.groupName + ' - ' + found + ' messages.');

            });
        });
    });

我的模块有点像这样想

模块消息

module.exports = {
  attributes: {
    id:{
         type: 'integer',
         primaryKey: true,
         autoIncrement: true
      },
    groupId:{
        type:'int'
    }
  }
};

模块组

module.exports = {
  attributes: {
  id:{
     type: 'integer',
     primaryKey: true,
     autoIncrement: true
  },
  groupName:{
    type:'string'
  }

  }
};

2 个答案:

答案 0 :(得分:2)

您需要编写提供所需结果的SQL查询。让我们说查询是:

var myQuery = "Select ... from ...";

现在您可以使用query的{​​{1}}方法执行查询,如下所示:

Model

使用查询方法时使用哪种模型无关紧要。

答案 1 :(得分:0)

从Sails v1开始,Model.query已过时,请改为使用sails.sendNativeQuery(queryString, paramArray)