使用simple_form复制字段的id

时间:2018-03-22 14:10:24

标签: ruby-on-rails simple-form

我在每个记录的页面中都有一个表单,如下所示:

- records.each do |r|
  ...
  = simple_form_for record do |f|
    = f.input :field

问题是每个输入都具有相同的id。如何添加前缀以生成record_12_field等ID?我已在input_html属性上尝试了htmlsimple_form_for个选项,但无效。

我能想到的唯一选择是手动设置每个输入的id。

这与建议的重复不同,因为我没有询问如何为单个字段设置ID,而是如何为所有字段添加前缀。

答案是使用namespace选项,此答案不会出现在副本上。请允许我回答这个问题。

1 个答案:

答案 0 :(得分:0)

<强>更新
正如Arnold所提到的,可以使用namespace选项。

原始回答
我认为不可能自动添加前缀。作为一种解决方法,您可以尝试:

- records.each do |record|
  ...
  = simple_form_for record do |f|
    = f.input :field, input_html: { id: "record_#{record.id}_field" }

或者,您可以切换到form_for并使用this solution