Rails check_box_tag проверяется на соответствие логическому значению

В моем db у меня есть логическое поле: is_in_city.

В поле зрения, я пытаюсь установить check_box_tag как:

= check_box_tag c.is_in_city

Но он никогда не проверяется, даже если значение db истинно. Что не так?

Мне нужно сделать такой chekbox, который не равен/проверяется в соответствии с значением поля bblean db, хранящимся в базе данных. Как я могу это сделать? Также как я могу установить еще одно мое свойство для флажка?

Ответ 1

Правильное использование метода check_box_tag выглядит следующим образом:

= check_box_tag :name, value, checked

Где value может быть что угодно, checked (должно быть) логическое.

В вашем случае:

= check_box_tag :is_in_city, 1, c.is_in_city

Документация здесь: http://api.rubyonrails.org/classes/ActionView/Helpers/FormTagHelper.html#method-i-check_box_tag