Использование Formtastic для выбора из радиоприемника и при необходимости создания новой записи - PullRequest
3 голосов
/ 27 июля 2010

Я начал использовать Formtastic в последние пару дней и пришел к своему первому скребку головы.

Я работаю с предметами, у каждого из которых есть несколько связанных аккаунтов. На данной странице вам необходимо выбрать учетную запись получателя. Это может быть либо учетная запись, о которой мы уже знаем («Главный контакт»), либо новая учетная запись, которую вы можете создать, заполнив небольшую информацию.

Вот дизайн, который я пытаюсь воспроизвести:

альтернативный текст http://img834.imageshack.us/img834/9528/54277787.jpg

Используя Formtastic, очень просто отобразить форму для ввода информации о новой учетной записи.

  <%= form.inputs :street, :city, :for => :address %>

Также очень просто создать список выбора радио доступных учетных записей.

  <%= form.input :address, :as => :radio, :collection => @addresses %>

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

Ну, реальный вопрос в том, как сделать изящное 1019 *. Все, о чем я думал, кажется, добавляет логику к контроллеру и заставляет меня подозревать, что есть изящное решение, которого я не вижу (недавно погрузившись в RoR, это очень знакомое чувство).

1 Ответ

0 голосов
/ 08 августа 2011

Не вижу решения, которое не добавило бы несколько строк в контроллер.Хотя "толстые модели, тонкие контроллеры" - хороший принцип, не всегда возможно иметь "однострочные" restful-методы с верхним фильтром, устанавливающим переменные для представлений.грациозность "мы говорим?;) Может быть, вы могли бы опубликовать решение, которое вы рассматриваете, и другие участники прокомментируют или оценят его?

...