3

如何更改 Rails 表单助手的默认生成代码?

代码...

<%= f.text_field :title, class: 'inputbox' %>

...产生...

<input id="post_title" name="post[title]" class="inputbox" type="text">

...但我希望默认情况下没有类参数的 text_field 生成上面的代码。

我正在使用导轨 3.2。

4

1 回答 1

12

为了获得这种行为,您要么必须覆盖现有的文本字段方法,要么添加一个新方法来满足您的需求。我会推荐后者,因为您不会更改内置 Rails 方法的现有行为。

类似于另一个答案

class ActionView::Helpers::FormBuilder
  def inputbox_field(method, options = {})
    text_field(method, options.merge(class: 'inputbox'))
  end
end

然后,您只需更改视图以使用它:

<%= f.inputbox_field :title %>
于 2013-01-28T01:35:55.790 回答