4
我希望能夠保護帳戶的電子郵件字段不被更新,但不能在帳戶記錄首次創建時保護。attr_protected僅用於更新?
我試過如下:
validate :email_is_unchanged, :on => :update
def email_is_unchanged
errors.add :email, "can only be changed through confirmation" if email_changed?
end
但是當我嘗試做以下(與數據庫中的現有記錄):
A = Account.first
一.update_attributes({:email => 「[email protected]」)}
它返回true但不保存記錄。檢查錯誤顯示驗證方法中的錯誤已添加。
有沒有更好的方法來做到這一點?