2

我又被卡住了一次……又一次我怀疑这是一个愚蠢的语法问题:

我想用我超级简单的搜索表单在 url 中传递 2 个变量。

我期待这样的 URL: http://mydomain/categories/search?search=pdf&os=2 但我得到了这个: http://mydomain/categories/search?search=pdf&os[]=

我认为它应该像这样工作:

<% form_tag  search_path, :method => 'get' do %>
  <%= text_field_tag :search, params[:search] %>
  <%= hidden_field :os, params[@category.id] %>
  <%= submit_tag "Search", :name => nil %>  
<% end %>

......但是,它没有做到......

有谁知道我哪里出错了?

谢谢!

瓦尔

4

2 回答 2

6

您需要稍微修改该行,使用hidden_field_tag

<%= hidden_field_tag :os, :value => @category.id %>

有关详细信息,请参阅hidden_​​field_tag 文档

于 2010-01-18T16:32:17.813 回答
2
  <%= hidden_field :os, params[@category.id] %>

将要使用@category.id 访问params 哈希中的键,是否有这样的键?看起来不像,因为它的返回为零。

好像你想要的东西的效果

  <%= hidden_field :os, @category.id %>
于 2010-01-18T13:45:56.717 回答