Если количество идентификаторов невелико, вам может это сойти с рук (хотя сортировать его не нужно):
docs = ids.map { |id| Doc.find(id) }
Недостатком является, конечно, то, что он все равно будет идти в базу данных для каждого документа.
Ближайший метод, который я смог найти, это Doc.criteria.for_ids(ids)
, но он не будет соблюдать порядок идентификаторов и извлекать каждый документ только один раз.См этот вопрос .