如已知,当登录过程失败时,Devise使用flash进行警报。没有resource.errors数组,只是闪烁。所以我的问题是如何做到这一点?我的意思是我怎样才能将这个功能用于我的目的?是否有股Devise的助手或控制器方法将资源错误从resource.errors移动到闪存?或者唯一的办法是写我自己的实现?为登录设计错误消息
我试图找出它自己,但我失败了。
谢谢。
如已知,当登录过程失败时,Devise使用flash进行警报。没有resource.errors数组,只是闪烁。所以我的问题是如何做到这一点?我的意思是我怎样才能将这个功能用于我的目的?是否有股Devise的助手或控制器方法将资源错误从resource.errors移动到闪存?或者唯一的办法是写我自己的实现?为登录设计错误消息
我试图找出它自己,但我失败了。
谢谢。
设计使用I18N它的Flash消息,它允许您完全自定义它们,甚至可以添加自己的。看看您的项目目录中的config/locales/devise.en.yml
。在那里你会看到Devise闪光消息所需的所有英文翻译。
如果你在设计看SessionsController
,你会看到下面这行:
set_flash_message(:notice, :signed_in) if is_navigational_format?
这就要求他们set_flash_message
并通过在闪存类型和所需的翻译。
至于想要用于你的目的,这真的取决于你想要做什么。将其翻译为新语言非常简单,只需在语言环境下添加YAML文件,如西班牙语为config/locales/devise.es.yml
,然后翻译现有文本即可。
任何超出,如添加新的提示信息,将需要覆盖默认设计的控制器,可以在其wiki被发现的例子,或者通过简单的Google search
janders223,我想通了,今天合适的解决方案我自己。但任何方式谢谢你! – evilguc