Скажем, к примеру, у вас есть модель с именем Account
, в которой вы сохраняете статус транзакции в столбце с именем status
, значение которого будет равно числу упомянутых вами кодов, вы можете сделать
class Account < ActiveRecord::Base
TRANSACTION_STATUS = {
"S" => "Submitted",
"P" => "Pending",
"A" => "Approved"
}
def status
TRANSACTION_STATUS[self[:status]]
end
end
Таким образом, вы переопределяете метод status
, предоставляемый activerecord для Account
объекта.
В зависимости от того, как вы собираетесь использовать поле status
, может потребоваться создать надлежащий индекс для этих столбцов (например, если вы собираетесь выбирать учетные записи с ожидающей транзакцией и т. Д.)