我有一个User
模型,具有以下属性:
# full_time :boolean
# part_time :boolean
# contract :boolean
我想为这些属性创建一个简单的表单复选框组。从我能够理解的,简单形式api旨在映射到has_many
和has_and_belongs_to_many
协会,如下:
f.collection_check_boxes :role_ids, Role.all, :id, :name
有没有办法在表单的API指南中处理给定模型上的多个属性的更新?或者这是否表明我应该以不同的方式对数据建模?
f.collection_check_boxes
是一种通用方法,用于为单个属性生成具有任意名称/值的多个复选框。您提供的示例在文档中被提及为此方法的最后一个,可能是因为f.association
对于关联属性更好。
<%= f.association :role, Role.all %>
如果您的属性,我不认为f.collection_check_boxes
适用。如果属性不是互斥的,那么我没有看到任何错误 - 坚持使用它们,只给每个人一个自己的复选框。
<%= f.input :full_time %>
<%= f.input :part_time %>
<%= f.input :contract %>
simple_form
将检测其类型并为每个类型生成一个复选框。使用wrapper: false
选项,如果你想摆脱包装div并将它们组合得更紧密。
如果它们是互斥的,那么整数列和qazxsw poi可能是一个更好的主意。