如何更改rails form helper的默认生成代码?
...代码
<%= f.text_field :title, class: 'inputbox' %>
... ...生成
<input id="post_title" name="post[title]" class="inputbox" type="text">
...但我希望没有类参数的text_field默认生成上面的代码。
我正在使用rails 3.2。
答案 0 :(得分:11)
要获得此行为,您必须覆盖现有的文本字段方法或添加一个符合您需要的新方法。我建议使用后者,因为你不会改变内置Rails方法的现有行为。
与another answer类似:
class ActionView::Helpers::FormBuilder
def inputbox_field(method, options = {})
text_field(method, options.merge(class: 'inputbox'))
end
end
然后您只需更改视图即可使用此选项:
<%= f.inputbox_field :title %>