MongoDB / Mongoid ви позволяват да направите това. Вашият пример ще работи, просто синтаксисът е неправилен.
@stocks = Stock.Where(:prices.value.lt => p) #does not work
@stocks = Stock.where('prices.value' => {'$lt' => p}) #this should work
И все още е верижно, така че можете да поръчате и по име:
@stocks = Stock.where('prices.value' => {'$lt' => p}).asc(:name)
Надявам се това да помогне.