У меня есть именованная область, вызываемая в методе класса. В массиве выполняется дополнительная сортировка. То, что я хочу сделать, это сделать named_scope и отсортировать его за один шаг. Атрибут, который я сортирую, не является столбцом в базе данных, это вычисленное значение. Мне нужна самая старая транзакция в статусе «Создано».Rails 3 ActiveRecord Сортировка по вычисленному атрибуту
scope :transactions_in_created_status,
where('trnsts in (?) and regsam = ?', 'Created', TYPE)
def self.oldest_transaction_in_created_status
result = Transaction.transactions_in_created_status.sort{|a,b| [a.update_date,a.update_time] <=> [b.update_date, b.update_time]}
result[0]
end
Я пробовал точно то, что размещено ниже, но я получаю ошибку ODBC "update_date" не найден.
Защиту UPDATE_DATE преобразует ММДДГГ в ccyymmdd КОНЕЦ
Спасибо за вашу помощь и предложения. Я все еще сталкиваюсь с трудностями при использовании .order в вычисленных полях. – Pan