Вопрос

I am trying to create a custom form builder that generates a span with an error message. I keep getting the message

NoMethodError at /class/create
undefined method `content_tag' for #<Padrino::Helpers::FormBuilder::StandardFormBuilder:0x00000005aa24b8>

Here is my extension:

module Padrino
  module Helpers
    module FormBuilder
      class CustomFormBuilder < AbstractFormBuilder

        def errors_for(field)
          if object.errors[field.to_sym]
            error = object.errors[field.to_sym].first
            content_tag(:span, error, class: 'error')
          end
        end
      end
    end
  end
end

end

I have placed this extension in the lib folder.

Это было полезно?

Решение

You should include helper modules you need in your builder class.

module Padrino
  module Helpers
    module FormBuilder
      class CustomFormBuilder < AbstractFormBuilder
        include TagHelpers
        include FormHelpers
        include AssetTagHelpers
        include OutputHelpers

        ...your methods here...
      end
    end
  end
end
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top