Я бы хотел выбрать коллекцию упорядоченных элементов на основе количества элементов в массиве. Надеюсь, следующий пример прояснит мое довольно слабое объяснение:
class Thing
include MongoMapper::Document
key :name, String
key :tags, Array
end
Я бы хотел получить все заказанные Thing
из тех, у кого больше тегов, у тех, у кого меньше всего Теги в этом примере - это просто строки в массиве тегов. В основном я хочу что-то, что означает то же самое, что и это (но работает):
Thing.all(:order => 'tags.count desc')
Возможно ли это?