2011-05-24 73 views
1

在我的rails 3应用程序中,我有一个用户注册表单。我有它要求和验证密码注册,但是,如果用户连接使用omniauth,我无法检索他们的密码,这使我的问题。我怎样才能让密码字段在某些情况下无法验证?Rails密码仅在某些情况下有效

我知道我可以做user.save(:validate => false),但是会取消所有的验证。

P.S.我观看了第23集的第23集,但是瑞恩贝茨与Devise合作,我正在用我自己的登录系统进行操作。

回答

1

,你可以在模型中加入条件的验证:

validates_presence_of :password, :unless => :account_from_omniauth? 

假设你也可以定义方法

def account_from_omniauth? 
    true if //...your conditions 
    false 
end 
相关问题