La documentación de Mongo dice :
Entonces no podemos ordenar usando el $size
de mongo .
Puede resolver su tarea agregando un nuevo campo, que almacenará el tamaño de la matriz.
class Post
include Mongoid::Document
field :likes, type: Array, default: []
field :likes_size, type: Integer
before_save do
self.likes_size = likes.size
end
end
Ordenar posts
por likes_size
:
Post.order_by(likes_size: :desc)