Настроить придумать пароль сообщение об ошибке


У меня есть проект, который реализует devise, и у меня возникли проблемы с переопределением сообщений контроллера паролей.

Когда пользователь вводит неверный адрес электронной почты, Devise по умолчанию выдает

Unable to find user with email {email}

Я не могу найти ключ для переопределения этого сообщения в devise.en.yml и не могу найти ничего с аналогичным сообщением на devise repo.

Есть ли у меня другой вариант, кроме как переопределить контроллер? Любая помощь ценится.

Спасибо

2 2

2 ответа:

Добавьте новый локаль, имеющий следующую структуру:

en:
  devise_token_auth:
    passwords:
      user_not_found: "Your custom message"

Это сообщение будет отображаться при передаче неверного сообщения электронной почты в форме забыли пароль.

Первоначально это сообщение исходит от драгоценного камня devise_token_auth. Но если у вас есть тот же локаль в ваших файлах локали, он будет переопределять локаль драгоценного камня.

Не имеет значения, в какую *.en.yml file вы введете эту локаль. Это может быть devise.en.yml, или вы можете добавить новый файл с именем devise_token_auth.en.yml. Только структура имеет значение.

Как описано в следующей ссылке Вы можете сгенерировать контроллер devise с помощью

rails generate devise:controllers user

Тогда вы можете пересилить действие create или update. Если вы включаете super в новое действие, оно вызовет родительское действие контроллера и затем выполнит код.

Вы также можете пересилить сообщения devise, как описано в этом посте , вам просто нужно создать эту локаль в настройках

en:
  devise_token_auth:
    sessions:
      not_confirmed: "your message overwritten"