ユーザーの電子メールにリセット リンクを送信する、パスワードを忘れた機能を実装しました。また、クライアント側で JavaScript ライブラリを使用して、有効な電子メール アドレスかどうかを確認するためのコードも追加しました。
私の質問は、メールアドレスがデータベースのユーザーテーブルにない場合に、フラッシュエラーメッセージを表示するように、サーバー側で確認する方法です。ユーザー テーブルにある場合は、パスワード リセット リンクを送信します。
Deviseユーザー管理に使用しています。
ユーザーの電子メールにリセット リンクを送信する、パスワードを忘れた機能を実装しました。また、クライアント側で JavaScript ライブラリを使用して、有効な電子メール アドレスかどうかを確認するためのコードも追加しました。
私の質問は、メールアドレスがデータベースのユーザーテーブルにない場合に、フラッシュエラーメッセージを表示するように、サーバー側で確認する方法です。ユーザー テーブルにある場合は、パスワード リセット リンクを送信します。
Deviseユーザー管理に使用しています。
あなたが描写した正確な機能は、Devise に同梱されています。これを有効にするには、Devise モデルを次のように宣言する必要があります:recoverable。
# app/models/user.rb (assuming that User is a Devise model)
devise :database_authenticatable, :registerable,
:rememberable, :trackable, :validatable, :recoverable
その後、 にアクセスして、パスワード回復フォームにアクセスできますhttp://yourdomain/users/password/new。をオーバーライド/サブクラス化していないと仮定するとDevise::PasswordsController、必要なすべての機能がすぐに使用できるようになります。