FOS elastica 按日期时间排序结果
FOS elastica ordering results by datetime
我正在按数据库中的日期时间字段对 FOS elastica 搜索结果进行排序。
elastica.yml 在映射上设置了这个 属性:
开始时间:{ 类型:日期,格式:Y-m-d H:i:s }
但是在填充时我得到了这个:
[Elastica\Exception\ResponseException]
MapperParsingException[mapping [soccer]]; nested: IllegalArgumentException[Invalid format: [Y-m-d H:i:s]: Illegal pattern component: i]; nested: IllegalArgumentExcept
ion[Illegal pattern component: i];
如何指定正确的格式以便我可以按日期时间字段搜索我的 elastica 结果?
我设法通过这个获得了预期的结果...
在elastica.yml
startsAt: { "type": "date", "store": true }
在我的控制器操作中:
$query = new Query();
$queryString = new \Elastica\Query\QueryString();
$queryString->setQuery('*'.$request->query->get('search').'*');
$query->setQuery($queryString);
$query->addSort(array('startsAt' => array('order' => 'desc')));
$results = $finder->findPaginated(
$query,
array(
'from' => ($request->query->get('page', 1) - 1) * $limit,
'limit' => $limit,
)
);
我正在按数据库中的日期时间字段对 FOS elastica 搜索结果进行排序。
elastica.yml 在映射上设置了这个 属性:
开始时间:{ 类型:日期,格式:Y-m-d H:i:s }
但是在填充时我得到了这个:
[Elastica\Exception\ResponseException]
MapperParsingException[mapping [soccer]]; nested: IllegalArgumentException[Invalid format: [Y-m-d H:i:s]: Illegal pattern component: i]; nested: IllegalArgumentExcept
ion[Illegal pattern component: i];
如何指定正确的格式以便我可以按日期时间字段搜索我的 elastica 结果?
我设法通过这个获得了预期的结果...
在elastica.yml
startsAt: { "type": "date", "store": true }
在我的控制器操作中:
$query = new Query();
$queryString = new \Elastica\Query\QueryString();
$queryString->setQuery('*'.$request->query->get('search').'*');
$query->setQuery($queryString);
$query->addSort(array('startsAt' => array('order' => 'desc')));
$results = $finder->findPaginated(
$query,
array(
'from' => ($request->query->get('page', 1) - 1) * $limit,
'limit' => $limit,
)
);