索引嵌套形式多在`fields_for`
问题描述:
鉴于模型Album
的has_many Song
与局部领域如后者:索引嵌套形式多在`fields_for`
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]
等,因为他们应该,但是,指数不为0的每个INDV重启idivual simple_fields_for
,但只是继续计数。
我检查了源代码并在Rails的fields_for
中发现了index
选项,但这只是增加了一个额外的索引数组。
当simple_fields_for
(或fields_for
)被多次调用相同的集合时,是否有办法“重置”索引的自动增量?
答
您可以通过将fields_for
放入循环并将child_index: your_index
传递给它来代替尝试重置自动增量,您可以自己设置索引。
是的,我只是来这里张贴相同的解决方案。 'child_index'似乎是完全没有证件,至少它没有提到任何地方[这里](http://api.rubyonrails.org/classes/ActionView/Helpers/FormBuilder.html#method-i-fields_for)。 – Thilo