CouchDB / Cloudant 使用引用获取另一个对象

CouchDB / Cloudant get another object using reference

我们正在使用两个对象:Employee 和 Company

在 Employee 对象中包含对公司 (idcompany) 的引用。我怎样才能获得带有 Company 字段的 Employee 对象? (使用视图或搜索索引)

示例:

员工 { "name":"test", "idcompany":"4a70356d1a99260f3b9fd565a10e5ece", "objecttype":"employee" }

公司 { "id":"4a70356d1a99260f3b9fd565a10e5ece", "name":"test", "objecttype":"company" }

你可以试试Join With Views提议

您可以使用以下地图函数定义视图

function (doc) {
  if (doc.idcompany) {
  emit(doc._id, {"_id":doc.idcompany});
  }
}

然后使用 include_docs=true 参数检索视图值。您将获得您在 emit 函数中定义的密钥,并与公司文档结合。