如何在日光浴场中使用自定义请求处理程序

问题描述:

我已经在solr中设置了请求处理程序/查询。现在,当我使用此代码时,它不起作用,但如果我将“查询”更改为“选择”,它可以正常工作。如何在日光浴场中使用自定义请求处理程序

// create a client instance 
$client = new Solarium\Client($config); 


// create a select query instance 
$query = $client->createQuery('query'); // change query to select and it works fine 

请让我知道。我试图搜索几个小时,但没有答案。

我已修复它。我用这个

// create a select query instance 
$query = $client->createSelect(); 
$query->setQuery('bird'); 

// manually create a request for the query 
$request = $client->createRequest($query); 
$request->setHandler('query'); 

因此,URI的结果是:

Request URI: query?omitHeader=true&wt=json&json.nl=flat&q=bird&start=0&rows=10&fl=%2A%2Cscore 

只需使用$选择阵列

$select = array(
    'handler'  => 'yourCustomRequestHandler', 
    'start'   => 0, 
    'rows'   => 10, 
); 

// create a select query instance 
$query = $this->client->createSelect($select); 

另一个选项检查Building a select query