如何从一个表单重定向到另一个表单并将值传递给第二个表单?

时间:2011-02-16 14:11:33

标签: ruby-on-rails-3

我在主页上有一个“迷你”表格,允许用户选择汽车颜色并按提交。 在这样做之后,用户被带到另一种形式,其中使用先前选择的汽车颜色 以另一种形式预先填充一个字段。

迷你形式是:

<%= form_tag('/cars/new', :method => :get) %>
  <%= select "new_car", "color_id", Colors.find(:all, :order => "description asc").
        collect {|s| [ s.description, s.id ] }, {:include_blank => 'Select color'} %>

  <input type="submit" value="Submit"/>

在按提交时,这会路由到正确的操作(/cars/new),但地址栏中的URL为:

http://localhost:3000/cars/new?utf8=✓&new_car[color_id]=12

我预期的地方:

http://localhost:3000/cars/new?color_id=12

如何让网址看起来像上面的那个?

另一个问题,form_tag究竟是如何使用的?如何设置结束</form>标签?

1 个答案:

答案 0 :(得分:1)

有关form_tag的阻止形式,请参阅:

http://api.rubyonrails.org/classes/ActionView/Helpers/FormTagHelper.html#method-i-form_tag

对于查询字符串问题,这里有一个类似的问题:

removing "utf8=✓" from rails 3 form submissions