当用户使用确认电子邮件链接首次登录时如何使设计宝石转到特定页面但仅在这种情况下

时间:2016-08-11 11:40:27

标签: ruby-on-rails devise devise-confirmable

所以我正在尝试构建一个用于rails练习的社交网络,使用devise gem要求用户确认电子邮件以启用登录。

我的问题: 我希望用户在他/她第一次登录时填写表单。第一次发生在他们点击确认电子邮件中的链接时。

用户登录的所有其他时间都会转到另一个页面。

我该怎么做?

1 个答案:

答案 0 :(得分:1)

您可以通过覆盖设计确认方法after_confirmation_path_for来实现此功能。

class ConfirmationsController < Devise::ConfirmationsController

  private

  def after_confirmation_path_for(resource_name, resource)
    your_new_after_confirmation_path
  end

end

在routes.rb中添加以下行,以便设计使用您的自定义控制器。

devise_for :users, controllers: { confirmations: 'confirmations' }

然后重启服务器。