使用 form_tag 向前传递所有参数

ssc*_*rus 3 ruby-on-rails ruby-on-rails-3

你怎么能用form_tag传递你所有的参数?

我试过了:

<%= form_tag(:controller => "users", :action => "index", :params => params) %>

<%= form_tag(:controller => "users", :action => "index", :params => params.except(:controller, :action)) %>
Run Code Online (Sandbox Code Playgroud)

这应该如何工作?

sma*_*thy 5

助手知道这:params是特别的,所以他们不会让你设置它。任何其他名称都可以正常工作...

<%= form_tag(:controller => "users", :action => "index", :p => params.except(:controller, :action)) %>
Run Code Online (Sandbox Code Playgroud)

更新

您是否意识到即使您能够设置:params它也不会覆盖params在您的控制器中的哈希之上?它会出现params[:params]在您的下一个请求中。

我只是突然想到你可能一直在尝试这样做......

<%= form_tag( params.merge( :controller => "users", :action => "index" )) %>
Run Code Online (Sandbox Code Playgroud)