Rails 3, группа радиокнопок в fields_for? - PullRequest
2 голосов
/ 13 июня 2011

Я думаю, что это должно быть довольно тривиально, но почему-то я, должно быть, делаю что-то не так ... И тот факт, что я не могу найти какие-либо результаты Google, доказывающие мне что-то хорошее, я мог упустить какой-то момент. Моя тема почти все говорит:
Как создать группу радиокнопок, которая создается в итерации fields_for

например:.

form_for @team do |t|
   f.fields_for :players |p|
       p.radio_button :is_captain, "is_captain_group"

Где is_captain - логическое поле на модели игрока. Вышеуказанный метод не работает ...

РЕДАКТИРОВАТЬ: Как указано ниже, все перечисленные игроки в fields_for должны «делиться» группой переключателей - например, 11 игроков, только один может быть выбран капитаном.

1 Ответ

0 голосов
/ 13 июня 2011

Обновление:

Затем необходимо объявить виртуальный атрибут (например, капитан) в модели команды:

В представлении:

form_for @team do |t|
   f.fields_for :players |p|
       t.radio_button :captain, p.id

В команде.rb:

def captain=(id)
  self.players.each do |player|
    player.is_captain = (player.id == id)
  end
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...