使用Sails.js查询MySql表

时间:2015-04-28 18:48:54

标签: mysql node.js sails.js

我是Sails.js的新手。我按照大部分文档,但无法从MySql数据库中检索简单数据。当我在浏览器中运行路由 - http://localhost:1337/getAllChoices时,浏览器似乎挂起了。我也没有在浏览器控制台中看到任何错误。

在我的模型文件夹中,我有一个Multiplechoice.js

module.exports = {
    attributes: {
        multiplechoiceid: { type: 'integer'},
        description: { type: 'string'}
    },

    getAllChoices: function(){
        return this.description ;
    }
}

我的route.js包含:     'get / allchoices':'HomeController.GetAllChoices'

我的HomeController包含:     getallchoices:function(req,res){       return MultipleChoice.getAllChoices();     }

我错过了什么吗?

谢谢。

1 个答案:

答案 0 :(得分:1)

您似乎正在尝试检索每个多项选择的说明。为此,您需要以下代码:

getallchoices: function(req, res){

  var descriptions = [];

  MultipleChoice.find({}).exec(function findCB(err, choices)
  {
    for(var i in choices)
    {
      descriptions.push(choices[i].description);
    }

    res.json(200, descriptions);
  });

}

getAllChoices()不会检索MultipleChoice模型中每条记录的数据。服务器挂起的原因还在于它等待您指定发送回客户端的响应(return "someValue";无法完成此操作)。既然你没有提供它,它只是永远等待。尝试发表评论res.json(200, descriptions);,服务器同样会永远挂起。