[問題] Rails: Modify data before saveing
環境:
Ruby 1.9.3p0
Rails 3.2.0.rc1
狀況:
這個問題最常見的範例就是將資料轉成大小寫
例如我想儲存 "TONYTONYJAN" 到某個 model 的某個 column(string)
但是實際儲存會變成 "tonytonyjan"
我想到三個解法:
1. override assign method
例如:
class User < ActiveRecord::Base
def username=(val)
write_attribute(:username, val.downcase)
end
end
2. 使用 Observer
3. 實做 before_save
我想請教各位前輩:
a. 如果是你們,會使用什麼方法來解決這個問題?
b. 推薦什麼方法和不推薦什麼方法
c. 是否有其他更好得解法?
不吝賜教
萬分感謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.246.1
推
01/10 21:05, , 1F
01/10 21:05, 1F
→
01/14 01:04, , 2F
01/14 01:04, 2F
→
01/14 01:04, , 3F
01/14 01:04, 3F
Ruby 近期熱門文章
PTT數位生活區 即時熱門文章