0
所以,我有一个自定义表单生成器。它的工作原理除了当我想要重载超类方法时。自定义FormBuilder超类是一个SafeBuffer。我错过了什么?
当我做到以下几点:
class MyFormBuilder < ActionView::Helpers::FormBuilder
def number_field(value, options = {})
super.number_field(value, options)
end
end
,并呼吁
'f.number_field(:value)'
我的形式
,我得到以下错误:
undefined method `number_field' for #<ActiveSupport::SafeBuffer:0x007f9a44b762f0>
我呼吁
raise "class: #{super.class}"
内部编号字段,我也得到:
类:的ActiveSupport :: SafeBuffer
所以错误是从我重写的方法产生。其他不调用超类方法的方法在我的表单构建器中正常工作。任何想法我做错了什么?