2014-03-31 36 views
3

我正在使用Devise进行身份验证,以在我的Rails应用中使用。应用程序中有两个设计模型,admincustomer根据模型验证自定义设计的Flash消息

客户模型使用mobile_number进行身份验证,而不是通常的email_id字段。但是,管理员字段使用email_id进行身份验证。

现在,我正面临的问题与devise显示的默认flash消息有关。

考虑,当用户输入无效的登录凭据,该消息是

'Invalid email or password' 

我想自定义基于模型的此消息。所以,如果管理员输入不正确的凭据,消息是:

'Invalid email or password' 

如果顾客进入一样,它是:

'Invalid mobile number or password' 

回答

3

目前设计的宝石支持各种不同的语言文件像英语,阿拉伯语,中国用于显示与用不同语言设计认证相关的所有Flash消息。

请参阅link。选择英文版本。在那你可以看到什么时候你需要显示invalid email or password的flash消息。所以,解决的办法是,

en: 
    devise: 
    failure: 
     customer: 
     invalid: 'Welcome user, you are signed in.' 
     not_found_in_database: 'Welcome user, you are signed in.' 
     admin: 
     invalid: 'Invalid mobile number or password' 
     not_found_in_database: 'Invalid mobile number or password' 

希望这有助于:)