我正在尝试构建一个使用pouchdb从Cloudant检索数据的离子应用程序。Cloudant只允许创建数据库和文档。如何在Cloudant中创建一些集合?
发布于 2017-04-07 19:54:46
答案分为两部分:
在Cloudant/CouchDB中,可以将满足特定条件的一组文档视为一个集合。您可以创建views来获取这些文档。这样的视图可以检查文档中是否存在属性(“具有名为type的属性的所有文档”)、属性值(“具有名为type的属性的值为book的所有文档”)或对应用程序有意义的任何其他条件,并返回相应的文档。
你基本上需要遵循一个三步的过程:
根据上一步中的调查结果,
以上文档链接提供了更多详细信息。
文档中的属性也可以表示集合,如下面的示例所示,该示例定义了一个简单的字符串数组。
{
"mycollectionname": [
"element1",
"element2",
...
]
}如何实现集合实际上取决于您的用例场景。
发布于 2018-04-24 00:30:42
很长的帖子,但希望能有所帮助。
我想用一个RDBMS类比来解释这一点。
在任何RDBMS中,新数据库意味着具有不同凭据集的不同连接。集合是指该特定数据库中的一组表。一条记录表示表中的一行。
类似地,您可以将单个Cloudant服务实例视为数据库(RDBMS术语)。在Cloudant的术语中,集合是该服务实例中的“数据库”。一个文档将对应到一行。
因此,Cloudant本身没有集合的概念。如果需要将相关文档存储在单独的集合中,则必须使用同一服务实例中的多个数据库进行存储。
如果只想使用一个数据库,可以创建一个类似"record_index“的字段来区分不同的文档。在查询这些文档时,您可以使用索引。为。我有一个学生数据库。但我不想将艺术,商业,科学分支的记录存储在不同的数据库中。我将在记录中添加一个字段"record_type":"arts“等。创建索引,
{ selector: {record_type: "arts"}}在对arts记录执行任何操作之前,您可以使用此索引并查询文档。通过这种方式,您将能够对文档进行逻辑分组。
https://stackoverflow.com/questions/43276506
复制相似问题