如何根据 Array 对象标记 simple_form 复选框?
How to mark the simple_form checkbox based on a Array object?
Rails 视图有两个参数
list_of_attributes = ["a1", "a2", "a3", "a4"]
user_selections = ["a2", "a4"]
我能够使用以下 simple_form 定义
显示适当的复选框和任何关联的用户选择
<% list_of_attributes.each do |item| %>
<label>
<%= check_box_tag "user_selections[]", item, user_selections.include?(item) %>
<%= item %>
</label>
<% end %>
如何使用 simple_form f.input 语法定义上述行为?使用以下定义,我能够显示适当的复选框,但任何用户选择都不是 'checked'.
<%= f.input key, as: :check_boxes, collection: list_of_attributes,
:label => key, class: "form-control" %>
感谢您的帮助。
添加选中的属性使 f.input 定义生效。
<%= f.input key, as: :check_boxes,
collection: list_of_attributes,
:label => key,
checked: user_selections,
class: "form-control" %>
<% end %>
试试这个。这对我有用 bootstrap CSS。检查我的 github 回购 here
中的第 25 行
<div class="form-group">
<div class="row">
<div class="col-sm-offset-3 col-sm-8">
<%= f.collection_check_boxes :your_model_ids, Your_model.all, :id, :list_of_attributes do |cb| %>
<% cb.label(class: "checkbox-inline input_checkbox") {cb.check_box(class: "checkbox") + cb.text} %>
<% end %>
</div>
</div>
</div>
然后在您的 CSS 文件中使用此自定义 input_checkbox class 以上
.input_checkbox input {
width: auto !important;
}
Rails 视图有两个参数
list_of_attributes = ["a1", "a2", "a3", "a4"]
user_selections = ["a2", "a4"]
我能够使用以下 simple_form 定义
显示适当的复选框和任何关联的用户选择<% list_of_attributes.each do |item| %>
<label>
<%= check_box_tag "user_selections[]", item, user_selections.include?(item) %>
<%= item %>
</label>
<% end %>
如何使用 simple_form f.input 语法定义上述行为?使用以下定义,我能够显示适当的复选框,但任何用户选择都不是 'checked'.
<%= f.input key, as: :check_boxes, collection: list_of_attributes,
:label => key, class: "form-control" %>
感谢您的帮助。
添加选中的属性使 f.input 定义生效。
<%= f.input key, as: :check_boxes,
collection: list_of_attributes,
:label => key,
checked: user_selections,
class: "form-control" %>
<% end %>
试试这个。这对我有用 bootstrap CSS。检查我的 github 回购 here
中的第 25 行<div class="form-group">
<div class="row">
<div class="col-sm-offset-3 col-sm-8">
<%= f.collection_check_boxes :your_model_ids, Your_model.all, :id, :list_of_attributes do |cb| %>
<% cb.label(class: "checkbox-inline input_checkbox") {cb.check_box(class: "checkbox") + cb.text} %>
<% end %>
</div>
</div>
</div>
然后在您的 CSS 文件中使用此自定义 input_checkbox class 以上
.input_checkbox input {
width: auto !important;
}