Puncte:0

Search API - Can't get result items

drapel tm

I installed Search API, created Search Index, and it's using the Solr server. When I execute the query and debug the code afterward, I get 3 result counts. And for result items, I get an empty array. When I try the same query in Solr Admin, I get 3 result counts as well as result items.

public function searchResults() {
    $parse_mode = \Drupal::service('plugin.manager.search_api.parse_mode')
      ->createInstance('terms');
    $parse_mode->setConjunction('OR');

    /** @var Query $query */
    $query = Index::load('default_solr_index')->query();
    $query->addCondition('status', 'true');
    $query->setOption('bq', 'base_site_url:"' . 'http://test.local' . '"^4');
    $query->keys('editor');
    $query->setLanguages(['en']);
    $query->setFulltextFields(['field_summary']);
    $query->range(50, 10);
    $query->setParseMode($parse_mode);
    $query->addTag('custom_search');

    $data = $query->execute();

    $results = $data->getResultItems(); // I get empty array
    $resultCount = $data->getResultCount(); // I get int 3
  }

I tried to change this line of code:

    $query->range(50, 10);

to:

    $query->range(0, 10);

But I get this error:

Argument 4 passed to Drupal\search_api_solr\Plugin\search_api\backend\SearchApiSolrBackend::getHighlighting() must be of the type array, null given, called in /var/www/html/my-project/modules/contrib/search_api_solr/src/Plugin/search_api/backend/SearchApiSolrBackend.php on line 2748

What am I doing wrong? This is my code and I use the Drupal 8 version.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.