Моя модель выглядит так (пример):
class Bank < ActiveRecord::Base
has_and_belongs_to_many :currencies
# other stuff
end
Когда я хочу получить какой-нибудь банк из базы данных, я делаю:
bank = Bank.first :joins => :some_table,
:conditions => {
#some conditions
}
Теперь, есть ли способ явно извлекать валюты из базы данных для заданных условий, сортировать их в некотором порядке и сохранять в bank.currencies ?
Я делаю что-то вроде этого:
bank.currencies.reject! { |c| c.value < something }
bank.currencies.sort! { |x,y| x.value <=> y.value }
Это работает, но таким образом я извлекаю все записи и фильтрую их самостоятельно.
Я хотел бы, чтобы СУБД сделала это для меня.
Это просто пример с банками и валютами. У меня есть большие записи, и я думаю, что важно просто найти те, которые меня интересуют.