Solr 6.0 と Solarium の統合は初めてです。セットアップを実行していますが、フィールドがクエリと完全に一致しない場合に結果が返されません。'http://ayodeji.com'
たとえば、 orを含む URL フィールド'http://ayo-tuntun.com'
がありますが、「ayo」のクエリはこれらの行を返しませんが*:*
、Solr 管理セクションのクエリで返されます。managed-schema ファイルで文字列をテキストに変更しましたが、それでも機能しません。助けてください 以下は、私が使用しているSolarium dismaxの例のコードです。ありがとうございました。
$client = new Solarium\Client($config);
$query = $client->createSelect();
$dismax = $query->getDisMax();
$dismax->setQueryFields('url^5 author^3 body^1 title');
$searchTerm = 'ayo';
$query->setQuery($searchTerm);
$resultset = $client->select($query);
echo 'NumFound: '.$resultset->getNumFound();
foreach ($resultset as $document) {
echo '<hr/><table>';
// the documents are also iterable, to get all fields
foreach ($document as $field => $value) {
// this converts multivalue fields to a comma-separated string
if (is_array($value)) {
$value = implode(', ', $value);
}
echo '<tr><th>' . $field . '</th><td>' . $value . '</td></tr>';
}
echo '</table>';
}