redirect_to current_user with params

时间:2016-02-08 12:12:31

标签: ruby-on-rails

如何将参数传递给current_user重定向?

# SessionHelper.rb
def current_user
    if(user_id  = session[:user_id]) 
        @current_user ||= User.find(user_id)
    else
        @current_user = nil
    end
end

#SomeController.rb
def some_action
   redirect_to current_user, param1: "bubbles"
end

# routes.rb
resources :doctors, :admins, :agencies # this is the line that handles current_user path

例如生成的URL就像foo.com/?param1='bubbles'。令人困惑的是,我将STI用于不同类型的用户,因此每个用户类型都有自己的' show' url,所以这样的方法

redirect_to controller: 'thing', action: 'edit', id: 3, something: 'else'

不起作用,因为每个用户类型都有自己的控制器。

1 个答案:

答案 0 :(得分:2)

您可以使用

redirect_to  polymorphic_path(current_user, something:'else')