Есть модель которая принимает аттрибуты для вложеной модели, результат формы возвращается в виде json, а потом отрисовывается
class Order < ActiveRecord::Base
accepts_nested_attributes_for :entries
end
class Entry < ActiveRecord::Base
accepts_nested_attributes_for :members, allow_destroy: true
end
И вот мы сабмитим форму Order, в которой есть свежие entry, в которых есть свежие members, с ошибками валидации
Поля в форме в следующем виде, в традициях Rails
<input autocomplete="off" class="string required form-control" id="order_entries_attributes_1459329286687_members_attributes_1459329286739_title" name="order[entries_attributes][1459329286687][members_attributes][1459329286739][title]" placeholder="Наименование" type="text">
Контроллер
class OrdersController
def update
if @order.update(order_params)
render json: @order
else
render json: @order.errors, status: :unprocessable_entity
end
end
end
И вот что возвращается
{"entries.members.client_id":["введите значение"],"entries.members.clinic_id":["введите значение"]}
Проблема в том что исходя из этого ответа невозможно точно определить в какой из entries, и с каким из вложенных member находится ошибка валидации. Может есть гем или какой-то другой подход?