Есть ли запрос:Does. Where ('field IN (?)', Array) всегда возвращают записи по порядку?
company_ids = [2,6,15,1,3]
@people = Person.where("company_id IN (?)", company_ids)
всегда возвращение @people
отсортированный по company_ids
массива?
Если нет, то было бы лучше практика, чтобы добавить .order()
как:
c_ids = company_ids.collect{|c_id| "company_id = #{c_id}"}
@people = Person.where("company_id IN (?)", company_ids).order(c_ids.join(','))
при заказе не указано явно, то это не гарантируется. –
@SergioTulentsev Я пытаюсь избежать накладных расходов на выполнение ненужного вида. Спасибо за ваш комментарий. – sscirrus
Если вы _need_ записываете по порядку, то лучше сортировать их. Или проснуться в середине ночи, когда происходит перерыв в производстве. :) –