如何使用rails中的form_tag方法传递params中的参数

Pre*_*rem 11 ruby-on-rails

我试图params[:tab] => "drive"使用form_tag在car_path方法中传递一个参数,但它在car_path 参数中不可用.这是我正在尝试的

<%= 
form_tag(
    car_path(@user.id), 
    {
        :method => :get, 
        params[:tab] => "drive", 
        :class => "form form-horizontal"
     }
) do 
%>
Run Code Online (Sandbox Code Playgroud)

JPG*_*JPG 24

一个不同的想法:在表单中使用隐藏字段不是更好吗?

<%= hidden_field_tag :tab , "drive" %>
Run Code Online (Sandbox Code Playgroud)


Kir*_*rat 9

用这个:

<%= form_tag(car_path(@user.id, :tab => "drive"), {:method => :get, :class => "form form-horizontal"}) do %>
Run Code Online (Sandbox Code Playgroud)

使用car_path作为查询参数传递它.

UPDATE

看看action="/visitors/198454?tab=drive",tab = drive是通过参数.在控制器中将其作为参数[:tab]访问.