Можете ли вы изменить несколько свойств с помощью помощника?
Я использую следующий помощник выбора:
f.select(:page_color, Orders::PAYMENT_TYPES ,:prompt => "Select a Box")
Можно ли изменить несколько столбцов с одним выбором? Скажем, я хочу изменить:page_color и:pay_method с выбором "Check". Это возможно?
PAYMENT_TYPES = [
# Displayed stored in db
[ "Check", "check" ],
[ "Credit card", "cc" ],
[ "Purchase order", "po" ]
]
1 ответ
Решение
Я думаю, что самое чистое было бы написать виртуальный атрибут:
def paymethod=(value)
mapping = {
'check' => 'red',
'cc' => 'green',
...
}
self.page_color = mapping(value)
super
end