帆。 js / Waterline.js - find()没有返回数组

时间:2016-06-27 04:51:45

标签: node.js sails.js waterline

问题:我从先前有效的代码中获得意外输出。

代码问题:

sails.models.user.find().then(function (users){...});

目前正在返回{ id: 1 }

但应返回一组User对象,如[{id:x, name:y},...]

代码更改:

  • sails.models.user.find().exec(function (err, users){...});不包含错误,并返回与使用上述.then()相同的内容。

  • sails.models.user.findOne(1).then(function (users){...});正确返回{id:x, name:y}之类的用户。

  • sails.models.venue.find().then(function (venues){...});返回一个场地数组,就像替换除User之外的任何其他类一样。

注意:

此代码之前正在运行(这是一个非常简单的行),我在它工作和不工作之间所做的唯一更改是运行npm install(但它之前在heroku上安装了哪个,所以我不知道我认为这是一个问题)并更改用户的架构以添加几个列(我通过删除数据库中的用户表,更新Sails用户模型,并在创建模式下提升应用程序来完成此操作,因此表格准确无误匹配模型)。这些都不会导致问题,但我们都知道“应该”和编码不会混合:P

我该如何解决这个问题?为什么会发生这种情况?谢谢:)

1 个答案:

答案 0 :(得分:0)

已实现其他代码正在调用正在执行其工作的程序包sails-mock-models。完全忘记了那段代码。问题解决了。