我正在使用simple_form gem。

我正在基于集合(所有actiontypes的列表)呈现输入

<%= f.association :actiontype, collection: Actiontype.all, input_html: { data: {'impacts-pnl' => ??}} %>

我希望能够向输入添加数据属性以存储额外的数据。

在这种情况下,我想存储impacts_pnlactiontype属性。唯一的问题是我不知道如何引用当前的actiontypecollection.impacts_pnl不起作用(显然)
actiontype.impacts_pnl都没有。

如何将这些额外的数据传递给我的输入?

最佳答案

如果要将这些属性添加到selectfield的option-elements中,则应使用例如.map()函数来更改集合。另外,使用带有block的输入助手来执行此操作,否则它将无法正常工作;

= 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

关于ruby-on-rails-3 - 将额外的数据添加到simple_form输入中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11398516/

10-16 00:21