Я использую SolrClient с SolrQuery объектом, но мне нужно добавить к нему RawQueryParameters:
![enter image description here](https://i.stack.imgur.com/bRp2B.png)
Как это сделать? Я довольно плохо знаком с запросами Solr и не могу найти такую опцию в документации.
Пока у меня есть это:
$SolrQuery = new \SolrQuery();
$SolrQuery->setStart($this->offset);
$SolrQuery->setRows($this->limit);
$SolrQuery->setQuery($request);
$SolrQuery->addField('*')->addField('units:[subquery]');
$SolrQuery->addParam('units.q', '{!terms%20f=id%20v=$row.unit_ids}');
При запуске toString()
на этом объекте я получаю:
start=0&rows=2147483647&q=type:address&fl=*,units:[subquery]&units.q={!terms%20f=id%20v=$row.unit_ids}
каков правильный запрос. Это отлично работает в CLI, но дает исключение при выполнении в PHP как $queryResponse = $SolrClient->query($SolrQuery);
:
Exception: while invoking units:[subquery] on doc=SolrDocument{id=stored,indexed,tokenized,omitNorms,indexOptions=DOCS
РЕДАКТИРОВАТЬ: Решение было использовать addParam()
без URL-кода запроса. Пробелы проходят просто отлично!