作者suomax (shadow)
看板Ruby
标题[问题] 请问 validates_presenes_of 的问题?
时间Thu May 24 17:16:20 2007
我的 User model 里面有两个虚拟栏位 password, password_confirmation
用来让使用者确认密码
用了
validates_presence_of :password, :password_confirmation
来确认使用者是否有输入密码
然後密码是用 salt + hash 不可逆编码存在资料库里
在编辑使用者资料时,若在 form 里面没有更新密码的时候,action 抓到的
password 会是空栏位,造成无法通过验证,但是又不可能从资料库里的资料
反推出原来的密码,这样要怎麽更新使用者资料,不更新密码,又不会引起
验证错误呢?
储存的方法是 user.update_attributes(params[:user])
用 update_attribute 更新个别栏位的时候好像不会引起验证的动作,
但是一个一个更新的作法好像有点丑,而且也必须牺牲其他栏位的验证 @@"
谢谢 m(_ _)m
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 210.69.49.253
※ 编辑: suomax 来自: 218.175.74.124 (05/24 18:08)
1F:推 WanCW:加上 ":on => :create" ? 05/25 02:32
2F:推 suomax:但是我在update user的时候也需要作验证,只是如果使用者没 05/25 07:30
3F:→ suomax:password/password_confirmation的时候就skip该栏位 05/25 07:31
4F:→ suomax:除非是在create的情况下 05/25 07:32