如何为不同组织中的不同用户使用相同的用户名?

时间:2015-06-02 07:51:41

标签: ruby-on-rails authentication ruby-on-rails-4 login devise

我为所有组织使用相同的用户表。我的用户表中有org_id来分配来自不同组织的用户。现在我想为该组织设置唯一的用户名。例如,org_id = 1具有管理员用户名,org_id = 2也具有管理员用户名。

目前,当我创建相同的用户名时,它会抛出错误

  

用户名已存在

如何设置仅在同一组织上申请的唯一用户名?

2 个答案:

答案 0 :(得分:7)

validates :name, uniqueness: { scope: :org_id}

这将验证与org_id相关的名称

答案 1 :(得分:5)

ActiveRecord验证通过范围为此提供唯一性:

validates :username, uniqueness: { scope: :org_id }

这样就可以:username验证:org_id