ユーザ検索用のチェックボックスをつけて初期値を配列で与えて対応するものをチェック状態にしたいのですが
view 内に以下のようなテストコードをかいたところstringの性別はチェックされずintの年齢だけがチェックされます
<% user = User.new user.gender = ['male', 'female'] user.age = [10,30] %> <%= form_for user do |f| %> <%= f.check_box :gender, {multiple: true}, 'male', nil %> <%= f.check_box :gender, {multiple: true}, 'female', nil %> <%= f.check_box :age, {multiple: true}, 0, nil %> <%= f.check_box :age, {multiple: true}, 10, nil %> <%= f.check_box :age, {multiple: true}, 20, nil %> <%= f.check_box :age, {multiple: true}, 30, nil %> <% end %>
user.gender = 'male'
とかくと male だけチェックされます
なぜこんなことになるのか挙動がよく理解できないのですが
string 型の value では複数の初期値をチェックすることはできないのでしょうか
あなたの回答
tips
プレビュー