Rails内联表单,带有带引导程序3的form_tag

时间:2013-12-30 21:43:28

标签: css ruby-on-rails twitter-bootstrap

我有这样的表格:

<%= form_tag items_path, {method: :get, :class => "form-inline"} do %>
    <%= text_field_tag :query, params[:query] %>
    <%= submit_tag "Search", name: nil, class: "btn btn-default" %>   
<% end %>

正如您所看到的,我正在尝试将“form-inline”类添加到此表单中,但是使用当前代码却没有成功。我已经看到了将html选项传递给form_for助手的示例,但是无法使用form_tag和路径url生成器(在我的情况下,items_path)找到正确的方法。请帮忙?提前致谢!

2 个答案:

答案 0 :(得分:7)

试试这个form_tag,即摆脱选项周围的大括号。

<%= form_tag items_path, method: :get, :class => "form-inline" do %>
    <%= text_field_tag :query, params[:query] %>
    <%= submit_tag "Search", name: nil, class: "btn btn-default" %>   
<% end %>

以下是此代码生成的form代码:

<form action="/items" class="form-inline" method="get">

答案 1 :(得分:0)

除了@ vee的回答之外,您还可以通过添加更多类来更好地使用Bootstrap。使用HAML

= form_tag items_path, method: :get, class: 'form-inline' do
  .form-group
    = search_field_tag :query, params[:query],
      placeholder: 'Search for something',
      size: 40,
      class: 'form-control'
    = submit_tag 'Search', name: nil, class: 'btn btn-default'

另请注意我使用search_field_tag代替text_field_tag