这可能实际上是一个愚蠢的问题,但我不明白查询过程在CouchDB中是如何工作的。我来自MongoDB背景,并不能真正应用我所知道的。
假设我有一个表格食谱数据库:
{
"_id": "335ddc061465ec83b50b4f8d4100058d",
"_rev": "2-b43fde3b553c08e8dd6ce19e397ec244",
"title": "Recipe title",
"ingredients": [
"ingredient 1",
"ingredient 2"
],
"procedure": "What you need to do to cook the recipe",
"pictures": [
"picture_url_1",
"picture_url_2"
],
"videos": [
"video_url_1",
"video_url_2"
],
"date": "some_date"
}
我想编写一个查询,例如给定一个或多个术语,它找到搜索可能结果的列表(即,我可以查找类似“具有类似标题成分1的食谱”的内容)。理想情况下,作为第一步,我将拆分查询并查找每个文档中的过程,标题和成分中的术语。我找到this并查看条件运算符,但我似乎没有找到与mongo中.find
函数类似的函数,其中包含{ $text: { $search: "similar title ingredient 1" } }
等参数。我想学习CouchDB在文档列表上执行这种逻辑OR查询的方法。
我正在使用Node.js + Express并使用node-couch与数据库进行交互。至于我为什么选择了我已经知道的Mongo的CouchDB,我只是想学习如何使用Couch :)。谢谢大家!
答案 0 :(得分:1)
有两种方法可能对您有用。
第一个选项可能是最好的,如果安装它是一个选项,你也不需要这个在PouchDB中工作。第二个是更基本的,但在两种情况下都可以工作,并且不需要任何第三方工具。