我正在使用simple_form gem。
我正在根据集合(我所有actiontypes
)的列表
<%= f.association :actiontype, collection: Actiontype.all, input_html: { data: {'impacts-pnl' => ??}} %>
我希望能够在输入中添加数据属性来存储额外的数据。
在这种情况下,我想存储impacts_pnl
的{{1}}属性。唯一的问题是我不知道如何引用当前的actiontype
actiontype
不起作用(显然)
collection.impacts_pnl
既不。
如何将这些额外的数据传递给我的输入?
答案 0 :(得分:15)
如果要将这些属性添加到选择域的选项元素,则应使用例如.map()函数更改集合。另外,使用带有块的输入助手来执行此操作,否则它不起作用;
= f.input :actiontype do
= f.select :actiontype, Actiontype.all.map{|a| [a.name, a.id, {"data-impacts-pnl" => p.impacts_pnl}]}
有关此问题的详细信息,请参阅https://github.com/plataformatec/simple_form/issues/188