我一直在尝试使用Cursors
(文档)来制作"下一步"answers"上一个"分页。我发现很奇怪,在返回的数据中没有prevCursorMark
和nextCursorMark
这样的东西。这使得实现下页和预页相当困难。
我想到了将以前的nextCursorMark
请求存储为前一个页面指针的想法。然而,我觉得它不会像简单地拥有prevCursorMark
那样可靠。
$query_response = $client->query($solrQuery);
$data = $query_response->getResponse();
$nextCursorMark = $data['nextCursorMark'];
$prevCursorMark = isset($_GET['nextResult'])?
htmlspecialchars($_GET['nextResult']):'*';
$pager = "<a href='index?1=1&nextResult=$prevCursorMark' class='page5 no_ajax'>Prev</a>
<a href='index?1=1&nextResult=$nextCursorMark' class='page5 no_ajax'>Next</a>";
所以这是我的问题:Solr
中的Cursors
是否提供了一个prevCursor标记?是否可以使用Cursors
进行下一个和上一个分页?
从solr 5.2开始,它不提供任何previous cursor mark
。如果您希望在应用程序中使用next和previous链接提供分页。您可以可靠地存储和使用solr返回的nextCursorMark
值。您可以重新提交nextCursorMark
值,更改其他内容,例如返回哪些存储字段或哪些字段是分面的。cursorMark参数本身包含所有必需的状态。没有服务器端状态