Foselasticabundle : 方法 returns 空结果
Foselasticabundle : method returns empty results
我使用 Elasticsearch 和 Foselasticabundle 在我的 Symfony 应用程序中进行搜索,但它 returns 为空结果。
这是我的配置和搜索方法:
foselasticbunde.yml:
indexes:
search:
finder: ~
client: default
types:
course:
mappings:
id: ~
title: ~
persistence:
driver: orm
model: AppBundle\Entity\Course
finder: ~
provider: ~
listener: ~
SearchController.php
public function elasticSearchAction(Request $request)
{
$query = $request->get('q');
$finder = $this->container->get('fos_elastica.finder.search.course');
$results = $finder->find($query);
return new JsonResponse($results);
}
但它 returns 这个空结果:
[{},{},{},{},{},{},{},{},{},{}]
有什么问题,我该如何解决?
结果是一个对象数组,我修改了我的代码:
public function elaSearchAction(Request $request)
{
$query = $request->get('q');
$finder = $this->container->get('fos_elastica.finder.search.course');
$results = $finder->find($query);
$data = array();
foreach ($results as $course){
$data[] = array(
'id' => $course->getId(),
'title' => $course->getTitle(),
'description' => $course->getDescription(),
);
}
return new JsonResponse($data);
}
我使用 Elasticsearch 和 Foselasticabundle 在我的 Symfony 应用程序中进行搜索,但它 returns 为空结果。 这是我的配置和搜索方法:
foselasticbunde.yml:
indexes:
search:
finder: ~
client: default
types:
course:
mappings:
id: ~
title: ~
persistence:
driver: orm
model: AppBundle\Entity\Course
finder: ~
provider: ~
listener: ~
SearchController.php
public function elasticSearchAction(Request $request)
{
$query = $request->get('q');
$finder = $this->container->get('fos_elastica.finder.search.course');
$results = $finder->find($query);
return new JsonResponse($results);
}
但它 returns 这个空结果:
[{},{},{},{},{},{},{},{},{},{}]
有什么问题,我该如何解决?
结果是一个对象数组,我修改了我的代码:
public function elaSearchAction(Request $request)
{
$query = $request->get('q');
$finder = $this->container->get('fos_elastica.finder.search.course');
$results = $finder->find($query);
$data = array();
foreach ($results as $course){
$data[] = array(
'id' => $course->getId(),
'title' => $course->getTitle(),
'description' => $course->getDescription(),
);
}
return new JsonResponse($data);
}