自定义设计密码错误消息
Customize Devise Passwords error message
我有一个实现设计的项目,但我无法覆盖密码控制器的消息。
当用户输入错误的电子邮件地址时,Devise 默认提供
Unable to find user with email {email}
我无法在 devise.en.yml
中找到覆盖此消息的密钥,并且在设计存储库中也找不到任何具有类似消息的内容。
除了覆盖控制器之外,我还有其他选择吗?感谢任何帮助。
谢谢
如 following link 中所述,您可以使用
生成设计控制器
rails generate devise:controllers user
然后您可以覆盖 create
或 update
操作。如果在新动作中包含super
,它将调用父控制器动作,然后执行代码。
您也可以将设计消息覆盖为 explained in this post,您只需要在设置中创建该语言环境
en:
devise_token_auth:
sessions:
not_confirmed: "your message overwritten"
添加具有以下结构的新语言环境:
en:
devise_token_auth:
passwords:
user_not_found: "Your custom message"
当在忘记密码表单中传递的电子邮件无效时,将显示此消息。
此消息最初来自 devise_token_auth
gem。但是,如果您的语言环境文件中有相同的语言环境,它将覆盖 gem 的语言环境。
将此区域设置放入哪个 *.en.yml file
并不重要。它可以是 devise.en.yml
,或者您可以添加一个名为 devise_token_auth.en.yml
的新文件。只有结构很重要。
我有一个实现设计的项目,但我无法覆盖密码控制器的消息。
当用户输入错误的电子邮件地址时,Devise 默认提供
Unable to find user with email {email}
我无法在 devise.en.yml
中找到覆盖此消息的密钥,并且在设计存储库中也找不到任何具有类似消息的内容。
除了覆盖控制器之外,我还有其他选择吗?感谢任何帮助。
谢谢
如 following link 中所述,您可以使用
生成设计控制器rails generate devise:controllers user
然后您可以覆盖 create
或 update
操作。如果在新动作中包含super
,它将调用父控制器动作,然后执行代码。
您也可以将设计消息覆盖为 explained in this post,您只需要在设置中创建该语言环境
en:
devise_token_auth:
sessions:
not_confirmed: "your message overwritten"
添加具有以下结构的新语言环境:
en:
devise_token_auth:
passwords:
user_not_found: "Your custom message"
当在忘记密码表单中传递的电子邮件无效时,将显示此消息。
此消息最初来自 devise_token_auth
gem。但是,如果您的语言环境文件中有相同的语言环境,它将覆盖 gem 的语言环境。
将此区域设置放入哪个 *.en.yml file
并不重要。它可以是 devise.en.yml
,或者您可以添加一个名为 devise_token_auth.en.yml
的新文件。只有结构很重要。