我遵循了这个railscast http://railscasts.com/episodes/189-embedded-association?view=comments,我觉得这很棒,但我想稍微处理一下角色。
我想要一个用于存储逗号分隔值的列“角色”,例如:“administrator,teacher”,以便用户分配管理员和教师角色。
我想设置复选框。
我目前所保存的内容是"---\n- administrator\n- teacher\n- ''\n"
我怎么能这样做?
_form.html.erb
<div class="group">
<%= f.label :roles, "Roles", :class => :label %>
<% for role in User::ROLES %>
<%= check_box_tag "user[roles][]", role, @user.roles.include?(role) %>
<%=h role.humanize %><br />
<% end %>
<%= hidden_field_tag "user[roles][]", "" %>
</div>
user.rb
ROLES = %w[superadmin admin instructor salesperson student]
答案 0 :(得分:2)
查看代码 下面应该工作
<% form_for @user do |f|%>
<div class="group">
<%= f.label :roles, "Roles", :class => :label %>
<% for role in User::ROLES %>
<%= f.check_box :roles, :name => "#{f.object_name}[roles][]", role%>
<%= h role.humanize %><br />
<% end %>
</div>
<% end %>
了解更多信息read类似的内容