2016-08-23 6 views
1

私は、ユーザーのアクセスログのドキュメントを含むcloudant dbを持っています。例:雲霧の検索インデックスのページ番号

{ 
    "name": "John Doe", 
    "url": "somepage.html", 
    "dateaccessed": "2016-08-23T21:20:25.502Z" 
} 

私は機能と検索インデックスを作成しました:

function (doc) { 
    if(doc.dateaccessed) { 
    var d = new Date(doc.dateaccessed); 
    index("dateaccessed", d.getTime(), {store: true}); 
    } 
} 

を普通のクエリで期待通りに今、この設定が機能しています。例

{ 
    q: 'dateaccessed:[1420041600000 TO 1471987625266]', 
    include_docs: true, 
    sort: '-dateaccessed<number>', 
} 

しかし、私は結果を制限したい - (「リミット:5」で行うことができる引数)のは、一度に5を言わせて、私は何とか改ページを作りたい - のことができるように次の5つの結果または前の5つの結果に移動します。

クラウドのドキュメントをチェックして、そこに「ブックマーク」(https://cloudant.com/for-developers/search/)という引数がありますが、使用方法がわかりません。

私はこれに関する洞察を求めることができますか?

答えて

0

Cloudant documentationはブックマークの使い方の例を示していますが、検索応答の中でブックマークを取得するというのは、次のページをリクエストするときに、bookmarkパラメータPOST用のJSONオブジェクトか、GET用のクエリパラメータです。

+1

1 - 初めてクエリを実行しました。 2 - 応答からブックマークを取り出し、次のクエリに渡しました。次の結果セットを取得することができました。 これで以前/次のボタンを作成できましたが、実際のページ番号(ページ番号)はどうやってこれを行うのか分かりません。 – Jigs

+0

できません。ページ数を知る方法はありません。また、最後のページにいるかどうかは判断できません。あなたは次のページがあることを知りたいという要求をしなければなりません。 – rhyshort

+0

@rhyshort、それは実際には真実ではありません。あなたが最初のクエリを実行するとき、あなたはtotal_rowsカウントを与えられないからです。したがって、最初のクエリを実行すると、ページネーションが可能になります。 – user3492940