Передача объекта из вида в контроллер - PullRequest
1 голос
/ 11 мая 2009

Есть ли способ передать объект, в частности объект form_builder, используемый в представлении, действию в контроллере? Я использую link_to_remote и хочу обновить переменную в контроллере, а затем добавить новый вложенный элемент формы в мою форму через блок render: update.

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

Ответы [ 2 ]

2 голосов
/ 11 мая 2009

Нет, вы не можете передать объект из вида в контроллер.

Вся ваша логика должна происходить в контроллере и модели, и в конце процесса представление отображает результат в браузере или других местах.

2 голосов
/ 11 мая 2009

Вы можете использовать только параметры, все, что нужно отправить контроллеру, должно быть сериализовано внутри параметров. Я уверен, что вам не нужно отправлять весь объект form_builder, отправляйте туда только то, что необходимо для создания новой «подчиненной формы»

Кстати, вы должны создать свои представления и контроллеры для работы без ajax, а затем постепенно улучшать свои формы и контроллеры, чтобы также поддерживать ajax. RJS и рендер: обновление - плохая практика, и ее следует избегать. найдите человека, который понимает JavaScript вместо написания псевдокода с помощью Rails 'RJS

...