修改注册路径设计

时间:2014-06-26 19:31:52

标签: ruby-on-rails ruby devise

我想根据用户在应用程序中注册的位置将用户重定向到特定页面。例如,如果您从/ users / sign_up注册,您将被定向到主页,但如果您从/ users / 1的注册表单注册,那么我想将您重定向回该用户&#39 ;注册后的个人资料。这可能与Devise有关吗?

1 个答案:

答案 0 :(得分:1)

尝试如下:

class ApplicationController < ActionController::Base
  before_filter :remember_my_last_path

  def after_sign_up_path_for resource
    if cookies[:last_path].blank?
      super
    else
      cookies[:last_path]
    end
  end

  private 
  def remember_my_last_path
    cookies[:last_path] = request.fullpath
  end

end

通过这种方式,您可以将哈希值last_path设置为cookie,并在每个控制器中调用它。当您单击注册时,您调用您覆盖的设计方法after_sign_up方法,然后将用户发送到特定路径或默认路径。

希望这会对你有所帮助。