私のエラスティカ型の構成は次のようになります。
acme_article:
mappings:
title: {type:string, index_analyzer:acme_analyzer}
content: {type:string, index_analyzer:acme_analyzer}
slug: ~
media: {type:string, index_analyzer:acme_analyzer}
categories:
type: "object"
properties:
name: ~
id: ~
instance:
type: "object"
properties:
name: ~
created_by: ~
created_at: ~
FOS\ElasticaBundle\Repository を拡張する Repository クラスがあり、並べ替え以外はすべてうまく機能します。
$query = new \Elastica\Query();
$query->setSort(array('created_at' => array('order' => 'desc')));
return $this->find($query);
完全に順序がなく、無関係な結果が得られます。次に、モデル ID をインデックスに追加し、ID で並べ替えようとしましたが、成功しませんでした。