【发布时间】:2018-03-16 20:17:28
【问题描述】:
这实际上可能是一个愚蠢的问题,但我不明白查询过程在 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 与数据库进行交互。至于我为什么选择 CouchDB 和我已经知道的 Mongo 相关,我只是想学习如何使用 Couch :)。谢谢大家!
【问题讨论】: