我关注了这个railscast http://railscasts.com/episodes/189-embedded-association?view=comments我认为这很棒,但我想以不同的方式处理角色。
我想要一个“角色”列来存储逗号分隔值,例如:“管理员,教师”,以便用户分配管理员和教师角色。
我想将其设置为具有复选框。
我目前保存的是:"---\n- 管理员\n- 教师\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]
最佳答案
查看代码 下面应该可以工作
<% 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类似的东西
关于ruby-on-rails - Rails 3. 使用复选框在一列中显示多个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9638296/