3

我有一个 couchbase 服务器,我正在尝试创建一些视图,但似乎我对视图概念没有完全理解。我有以下两个示例文档:

{
  "id": 70,
  "status": 2,
  "updatedAt": "2014-09-04T08:52:29.969Z",
  "createdAt": "2014-09-03T21:32:19.000Z",
  "user1": {
    "id": 33185,
    ....
  },
  "user2": {
    "id": 40838,
    .....
  }
}

{
  "id": 71,
  "status": 4,
  "updatedAt": "2014-09-03T21:33:09.404Z",
  "createdAt": "2014-09-03T21:32:20.000Z",
  "user1": {
    "id": 37126,
    ....
  },
  "user2": {
    "id": 36094,
    .....
  }
}

当我使用此地图功能创建视图时:

function (doc, meta) {
  if (doc.user1 && doc.user2) {
    emit(doc.id, doc);
  }
}

视图不返回第一个文档(id:70),而第二个是。我不明白为什么即使两者都有 user1 和 user2。

非常感谢任何帮助。

4

2 回答 2

4

您需要将文档从开发文档提升为生产设计文档。开发设计文档仅对数据子集进行操作。

于 2014-11-01T15:46:19.230 回答
0

要记住的是,开发视图用于开发视图本身,并且只能查看数据子集。一旦你拥有了它,这样视图就可以按照你想要的方式工作,你可以将视图提升为生产视图,这样它就可以针对整个数据集工作。

于 2014-11-02T05:14:01.920 回答