2016-06-24 6 views
0

こんにちは私はCloudantからクエリを実行しようとしていましたが、このテキストインデックスを作成しました(JSONインデックスの代わりにテキストインデックスを使用しました。戻り値オブジェクトの「ブックマーク」値を取得します)。ソート時にテキストインデックスを使用するクラウド

{ 
"type": "text", 
"def": { 
    "default_analyzer": "keyword", 
    "default_field": {}, 
    "selector": {}, 
    "fields": [ 
    { 
    "Name": "string" 
    } 
    ], 
    "index_array_lengths": true 
} 
} 

そしてここでは、私のクエリ

{ 
    "selector": { 
    "Type": "people" 
    }, 
    "fields": [ 
    "_id", 
    "_rev", 
    "Name" 
    ], 
    "sort": [ 
    {"Name:string": "asc"} 
    ], 
    "limit": 3 
} 

だが、私は「このセレクタのために利用可能なインデックスがありません」このエラーメッセージが出続けます。どの部分が間違っていたのですか?

答えて

0

検索インデックス(JSON)を使用して、ページネーションを作成するための応答としてブックマークを取得できます。 クエリ - >新しい検索インデックス

は、名前で検索する:

function(doc){ 
    index('default', doc.name, {'facet' : true}); 
} 

検索では、ソート、(2番目の呼び出しで)しおり、あなたが制限値を渡す必要があります呼び出します。

例:

cloudant_host_url/_design/queries/_search/NAME_OF_THE_INDEX_SEARCH?q=WORD_YOU_ARE_SEARCHING&limit=5&sort=NAME&bookmark=BOOKMARK_GOT_IN_THE_PREVIOUS_CALL 

あなたは、例えば、IDの、他人のインデックスを検索することができます。

function(doc){ 
    index('id', doc._id, {'facet' : true}); 
} 

URLをIDで取得するには:

cloudant_host_url/_design/queries/_search/NAME_OF_THE_INDEX_SEARCH?q=*:* AND id:(ID_YOU_ARE_SEARCHING)&limit=5 

あなたは両方を組み合わせることができます。

cloudant_host_url/_design/queries/_search/NAME_OF_THE_INDEX_SEARCH?q=WORD_YOU_ARE_SEARCHING AND id:(ID_YOU_ARE_SEARCHING)&limit=5 
関連する問題