La documentazione di Mongo dice :
Quindi non possiamo ordinare usando $size
di mongo .
Puoi risolvere il tuo compito aggiungendo un nuovo campo, che memorizzerà la dimensione dell'array.
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
Ordina posts
per likes_size
:
Post.order_by(likes_size: :desc)