验证下拉列表,用户不应两次选择同一角色

时间:2019-01-31 05:37:15

标签: ruby-on-rails

下拉列表包含需要分配给用户的不同角色。每个用户可以具有多个角色。但是用户不应两次选择相同的角色。我该如何验证?需要帮助

下拉代码

<%= f.select(:role_id, Role.all.map{|e| [e.name, e.id]},{ include_blank: "Please select"}, multiple: true ) %>

通过关联使用has_many

user_role.rb

belongs_to :user
belongs_to :role

1 个答案:

答案 0 :(得分:1)

UserRole模型添加uniqueness constraint

belongs_to :user
belongs_to :role 

validates_uniqueness_of :role_id, :scope => :user_id