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

How to use the same username for different users in different organizations?

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

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

username already exists

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

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

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

所以这将验证 :username 关于 :org_id

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

这将根据 org_id

验证名称