所以我想要为一个简单的表单定义一个自定义输入组件,并具有以下内容:
# app/inputs/gds_input.rb
class GdsInput < SimpleForm::Inputs::Base
def input(wrapper_options = nil)
binding.pry
end
end
然后在表格中我有以下内容:
<%= builder.simple_fields_for :registration, registration do |reg| %>
<fieldset>
<%= reg.input :first_name, required: true, input_html: { maxlength: 40, class: 'gds-Input' }, as: :gds_input %>
</fieldset>
<% end %>
但是我在运行时遇到No input found for gds_input
错误。
对于我没有考虑到的那些想法?
答案 0 :(得分:1)
您的自定义类必须具有后缀Input
,并且要使用它,您必须从该类名的underscore
版本中删除该后缀。
在你的情况下:
# class name is GdsInput
reg.input :first_name, {...}, as: :gds