Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何将类添加到Rails中的简单表单输入包装器中?_Ruby On Rails_Wrapper_Simple Form - Fatal编程技术网

Ruby on rails 如何将类添加到Rails中的简单表单输入包装器中?

Ruby on rails 如何将类添加到Rails中的简单表单输入包装器中?,ruby-on-rails,wrapper,simple-form,Ruby On Rails,Wrapper,Simple Form,我需要以简单的形式向f.association输入添加一个数据属性。为此,我找到并随后引用了。使用标准语法添加类很容易,我想知道为什么使用包装器很困难 因此,与标准不同的是: <%= f.association :size, input_html:{class: 'sku-suffix-component'} %> 与之相比: <select class="form-control select required sku-suffix-component" name="pro

我需要以简单的形式向
f.association
输入添加一个数据属性。为此,我找到并随后引用了。使用标准语法添加类很容易,我想知道为什么使用包装器很困难

因此,与标准不同的是:

<%= f.association :size, input_html:{class: 'sku-suffix-component'} %>
与之相比:

<select class="form-control select required sku-suffix-component" name="product[color_id]" id="product_color_id"> (...)
(…)

尝试此解决方案,如果可能的话,为JSFIDLE创建一些链接,以便我们可以测试并尝试找到解决方案

<%= f.input :size do %>
    <%= f.select :size, Size.all.map { |s| [s.name, s.id, { class: 'sku-suffix-component', 'data-code-num' => s.code_num }]}, input_html: { class: 'sku-suffix-component' }, include_blank: true %>
<% end %>

s、 代码_num}]},输入_html:{class:'sku后缀组件'},包括_blank:true%>

我发现解决方案结合了我在不同帖子中找到的策略

它的长短不一之处在于使用
map
方法,而不是在自定义输入包装器中

<%= f.association :size, collection: Size.all.map{ |s| [s.name, s.id, {'data-code-num' => s.code_num}]}, input_html:{class: 'sku-suffix-component'} %>

感谢您花时间回答,这确实有效,但将类分配给
标记,而不是
标记
<%= f.input :size do %>
    <%= f.select :size, Size.all.map { |s| [s.name, s.id, { class: 'sku-suffix-component', 'data-code-num' => s.code_num }]}, input_html: { class: 'sku-suffix-component' }, include_blank: true %>
<% end %>
<%= f.association :size, collection: Size.all.map{ |s| [s.name, s.id, {'data-code-num' => s.code_num}]}, input_html:{class: 'sku-suffix-component'} %>
<select class="form-control select required sku-suffix-component" name="product[size_id]" id="product_size_id">
  <option value=""></option>
  <option data-code-num="001" value="113">onesize</option>
(...)