Не удается предварительно проверить check_box_tag в рельсах - PullRequest
2 голосов
/ 09 марта 2012

У меня есть код, который выглядит следующим образом:

@all_ratings.each do |rating|
  = check_box_tag "ratings[#{rating}]", session[:checkbox][rating], :id => "ratings_#{rating}"
  ...
= submit_tag 'Refresh', :id => "ratings_submit"

Сохраняя состояние, какие флажки были нажаты, я надеялся, что смогу предварительно проверить флажки, которые были нажаты после того, как запрос прошел, истраница перезагружается.Проблема, с которой я столкнулся, заключается в том, что приведенный выше код не работает.Я не уверен, что это потому, что у меня есть бит :id => "ratings_#{rating}" в конце (который необходим для этого назначения).Я проверил рельсы API здесь , но это было так же ясно, как грязь.Заранее спасибо за помощь!

Приветствия

(Отказ от ответственности: Этот код предназначен для HW 2 для курса Курс «Программное обеспечение как услуга» - я закончил основную логику для HW, ноэтот последний бит мне не по душе и кажется скорее своеобразной, чем основной темой, поэтому я публикую ее здесь.)

1 Ответ

1 голос
/ 09 марта 2012

Какую логическую переменную вы добавили?Учитывая, что у меня есть модель с оценками has_many, скажем, Video, и я определил @video, я бы сделал

= check_box_tag "ratings[#{rating}]", session[:checkbox][rating], @video.ratings.include?(rating), :id => "ratings_#{rating}". 

. Часть @video.ratings.include?(rating) предварительно проверяет оценки, связанные с текущим видео.Какие ассоциации связаны с вашей моделью рейтинга?

...