0

我正在为我的风帆项目使用sails-mongo 适配器。

我想从集合中检索选定的列。

这是我的收藏文档数据

{
   "_id": ObjectId("54449e2ecaf08cf40fc8704f"),
   “名称”:“演示”,
   "display_name": "演示",
   “状态”:是的,
   "createdAt": ISODate("2014-10-20T05:31:26.714Z"),
   "updatedAt": ISODate("2014-10-21T13:02:41.595Z")
}

我想检索“name”和“display_name”

与 mysql 中相同,例如“SELECT name, display_name FROM TABLE”;

-谢谢 :)

4

2 回答 2

3

Waterline 允许您像这样查询以实现

User
.find({
    'where': { 'or': [{'firstname': name}, {'lastname': name}] },
    'select': ['uuid','firstname','lastname','createdAt']
})

Sails 的合作者 dmarcelino 在 4 月 29 日就这个问题发表了评论,并且 waterline 确实支持它,而无需引入本地。 .select() #73

于 2015-10-22T17:06:04.330 回答
2

您可以使用 中的native函数sailsjs,如下所示:

ModelName.native(function (err, Collection){
  Collection.find({}, { 'name': 1, 'displayName': 1, '_id': 0 }, function (err, result){
     if(err){
       /* handle error */
     }
     else{
       /* Do somethig with the result */
     }
  });
});

native函数允许我们在 Sailsjs 中运行本机 mongodb 查询。

MongoDB您可以使用以下命令在控制台中检查查询:

db.collectionName.find({}, { 'name': 1, 'displayName': 1, '_id': 0 })

于 2014-10-31T13:41:22.620 回答