如何在 Devise 中启用 :recoverable?

2 ruby-on-rails devise

默认情况下,Devise 中的忘记密码实际上并未向电子邮件发送密码重置链接,我知道该:recoverable模块是需要启用/实施的。

我曾尝试在 google 和 stackoverflow 中搜索教程或指南,但没有成功。

我在哪里可以找到一个好的例子或者我需要什么代码来启用它?

Aru*_*han 5

要启用该recoverable模块,请将其作为符号传递给该devise方法。

# in user.rb

devise :recoverable # add other modules, separated by commas
Run Code Online (Sandbox Code Playgroud)

例如,您的设备配置可能如下所示。

devise :database_authenticatable, :registerable, :confirmable, :recoverable
Run Code Online (Sandbox Code Playgroud)

您还应该添加reset_password_tokenreset_password_sent_at列的users表格。您可以通过迁移来实现。

# in user.rb

devise :recoverable # add other modules, separated by commas
Run Code Online (Sandbox Code Playgroud)

在生成的迁移文件中,添加以下内容。

devise :database_authenticatable, :registerable, :confirmable, :recoverable
Run Code Online (Sandbox Code Playgroud)