1

У меня есть комплекс Вложенная форма, которая занимает несколько секунд, когда она не кэшируется. Скрытые поля id выглядят так:Рельсы: Частично кэширование вложенной формы

<input type="hidden" value="1" name="user[properties_attributes][0][id]"> 
<input type="hidden" value="2" name="user[properties_attributes][1][id]"> 
<input type="hidden" value="3" name="user[properties_attributes][2][id]"> 
<input type="hidden" value="4" name="user[properties_attributes][3][id]"> 

Теперь я хочу кэшировать части формы и изменять только те детали, которые обновляются. Проблема заключается в том, что fields_for не распознает кэшированные части и запускает счетчик в 0:

<cached> 
    <input type="hidden" value="1" name="user[properties_attributes][0][id]"> 
    <input type="hidden" value="2" name="user[properties_attributes][1][id]"> 
</cached> 
<updated> 
    <input type="hidden" value="3" name="user[properties_attributes][0][id]"> 
</updated> 
<cached> 
    <input type="hidden" value="4" name="user[properties_attributes][3][id]"> 
</cached> 

Таким образом, второй [0] [ID] -поле перекрывает первый.

Есть ли способ использовать случайные строки, а не последовательные целые числа?

<input type="hidden" value="1" name="user[properties_attributes][ab2ca3ga][id]"> 
<input type="hidden" value="2" name="user[properties_attributes][d7e555wf][id]"> 
<input type="hidden" value="3" name="user[properties_attributes][g18fhhd1][id]"> 
<input type="hidden" value="4" name="user[properties_attributes][jl8h18dh][id]"> 

Тогда кэшированные поля могут оставаться без изменений. Спасибо за любые идеи, как это решить!

ответ

0

В конечном итоге я решил использовать JavaScript.