我正在尝试创建与此gem authlogix-rpx类似的功能,即使缺少某些经过验证的字段,它也会乐观地保存会话/用户对象。
http://github.com/tardate/authlogic_rpx/tree/master/lib/authlogic_rpx(第167行)
使用这个gem可以创建不符合验证标准的记录,然后再调用registration_complete?如果所有验证都没有通过则返回false的方法。
我不确定这个保存是如何发生的,在我的gem中(使用oauth2添加到authlogic)我尝试过save(false),save_with_vaidation_false但是nothign确实有效,验证失败并且记录得到保存。
有什么想法吗?
由于
答案 0 :(得分:0)
您应该能够运行user.save(false)
来保存用户,然后使用user.errors.full_messages
来访问验证错误消息。
或者您可以在验证中提供:on
参数,将其限制为:create
,:update
或两者(:save
)
validates_presence_of :email, :on=>:update