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
所以錯誤是從我重寫的方法產生。其他不調用超類方法的方法在我的表單構建器中正常工作。任何想法我做錯了什麼?