0

ONGRFilterManagerBundle を使用して全文検索を実行しようとしています。すべてが構成され、プロジェクトに追加されましたが、一部のデータを検索するとすぐに、検索がまったく無関係な結果を返すことがわかりました。

ここに私の設定があります:

ongr_elasticsearch:
  managers:
    default:
      index:
        hosts:
        - "%env(ELASTIC_HOST)%:%env(ELASTIC_PORT)%"
        index_name: project_search
      mappings:
      - SearchBundle

ongr_filter_manager:
  managers:
    search_list:
      filters:
      - content
      - pagination
      repository: es.manager.default.typed_content
  filters:
    content:
      type: match
      request_field: text
      document_field: content
    pagination:
      type: pager
      request_field: page
      document_field: ~
      options:
        count_per_page: 12
        max_pages: 8

ここに私の文書があります

namespace SearchBundle\Document;

use ONGR\ElasticsearchBundle\Annotation as ES;

/**
 * @ES\Document()
 */
class TypedContent implements DocumentInterface
{
    /**
     * @ES\Id()
     * @var string
     */
    private $id;

    /**
     * @ES\Property(type="text")
     * @var string
     */
    private $content;

    /**
     * @ES\Property(type="text")
     * @var string
     */
    private $type;

    /**
     * @var mixed
     */
    private $dataObject;

    /**
     * @return mixed
     */
    public function getId()
    {
        return $this->id;
    }

    /**
     * @param mixed $id
     */
    public function setId($id): void
    {
        $this->id = $id;
    }

    /**
     * @return mixed
     */
    public function getContent()
    {
        return $this->content;
    }

    /**
     * @param mixed $content
     */
    public function setContent($content): void
    {
        $this->content = $content;
    }

    /**
     * @return string
     */
    public function getType(): string
    {
        return $this->type;
    }

    /**
     * @param string $type
     */
    public function setType(string $type): void
    {
        $this->type = $type;
    }

    /**
     * @return mixed
     */
    public function getDataObject()
    {
        return $this->dataObject;
    }

    /**
     * @param mixed $dataObject
     */
    public function setDataObject($dataObject): void
    {
        $this->dataObject = $dataObject;
    }
}

たとえば、単語を検索するとolive、すべてのドキュメントの結果セットが取得されますが、「オリーブ」に遠く離れた単語が含まれておらず、スコアはすべての結果で「1」です。

誰が私の間違いを見つけることができますか?

4

1 に答える 1