鉴于模型Album
has_many Song
,后者具有本地化字段,例如:
Song#name_en
Song#description_en
Song#name_fr
Song#description_fr
[...]
由于前端设计,我不能在一个地方为所有歌曲属性做一个f.simple_fields_for :songs
,但需要拆分它:
= f.simple_fields_for :songs do
= render partial: 'song_en_fields', locals: { f: f, locale: :en }
[...]
= f.simple_fields_for :songs do
= render partial: 'song_fields', locals: { f: f, locale: :fr }
[...]
结果字段使用[0]
,[1]
等进行索引,但是,索引不会在每个单独的simple_fields_for
上以0重新启动,而只是保持计数。
我检查了源代码并在Rails'index
中找到了fields_for
选项,但这只是添加了一个额外的索引数组。
对同一个集合多次调用simple_fields_for
(或fields_for
)时,有没有办法“重置”索引的自动增量?
答案 0 :(得分:7)
您可以通过将fields_for
放入循环并将child_index: your_index
传递给它来自行设置索引,而不是尝试重置自动增量。