Symfony主义与FosElastic如何从ORM和Elastic一起搜索



例如

我的实体有字段:

id(int(

标题(文本((也存储在弹性中(

内容(文本((也存储在弹性中(

categoryId(int(

状态(int(

我想从标题中搜索文本,内容我使用

//RepositoryManagerInterface $finder
$results = $finder->getRepository(Offer::class)->find('AUDI A6 C6 2.0');

当我想在数据库示例中通过categoryId 进行搜索时

$offers = $this->getDoctrine()->getRepository(Offer::class)->customOfferQueryBuilderWithResult(['categoryId'=>5]);

如何一起搜索?我必须将categoryId也存储在弹性中吗?

试试这个:

//Repository method
/**
* @param int $id
* @return Query
*/
public function getByOfferId(int $id): Query
{
$terms = new Terms('categoryId', [$id]);
$boolQuery = (new BoolQuery())->addMust($terms);
return (new Query())->setQuery($boolQuery);
}

相关内容

  • 没有找到相关文章

最新更新