沙发 DB - 将输入参数传递到视图



我正在从我的Web应用程序从SQL迁移到Couch DB,这是我的第一个应用程序。

虽然我不能说为什么我不喜欢SQL查询,不确定我不喜欢,但发出CURL请求来访问我的数据库的想法必须比使用PHPs PDO更好。

我花了一天半多一点的时间试图熟悉沙发DB HTTP API。我不能声称我已经彻底阅读了 API,但是谁在开始编码之前彻底阅读了 API。所以我的,可能很愚蠢的问题是 - how do I pass an variable other than doc to a map function while making a http request to the view. API 明确表示映射函数只接受一个参数,即"doc",在这种情况下,下面的函数本身是错误的,但我在 API 中找不到任何部分让我使用最终用户提供的输入查询数据库。

我的地图功能是

function(doc, pid2){
      if (doc.pid === pid2)
    {
        emit(doc._id, doc) ;
    }
}

PID2 是由前端用户提供的号码。

    <?php
    $pid2 = file_get_contents(facebook graphi api call_returns a Profile ID) ;
    $user_exists = HTTP request to couch DB view to return 
in JSON format the list of JSON documents with pid = $pid2
?>

让你的视图发出以doc.pid为键

的文档
function(doc) { 
    emit(doc.pid, doc);
}

并使用 key 参数检索正确的文档:

http://localhost:5984/<database>/_design/<designdoc>/_view/<viewname>?key=<pid2>

这应该返回所有带有 doc.pid === pid2 的文档。

相关内容

  • 没有找到相关文章

最新更新