ruby-on-rails – attr_protected仅用于更新?
发布时间:2020-12-17 02:10:55 所属栏目:百科 来源:网络整理
导读:我希望能够保护帐户的电子邮件字段不被更新,但不能在首次创建帐户记录时保护. 我尝试了以下方法: validate :email_is_unchanged,:on = :updatedef email_is_unchanged errors.add :email,"can only be changed through confirmation" if email_changed?end
我希望能够保护帐户的电子邮件字段不被更新,但不能在首次创建帐户记录时保护.
我尝试了以下方法: validate :email_is_unchanged,:on => :update def email_is_unchanged errors.add :email,"can only be changed through confirmation" if email_changed? end 但是当我尝试执行以下操作时(使用数据库中的现有记录):
它返回true但不保存记录.检查错误表明添加了验证方法的错误. 有一个更好的方法吗? 解决方法
请尝试以下方法:
class Account < ActiveRecord::Base attr_readonly :email end 这允许使用电子邮件创建新记录,但不允许后续更新. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |