每个用户可以有两个别名,但每个别名必须具有唯一的名称。例如:
用户1:鲍勃,罗恩
User2:Bob
如果User2要创建另一个别名,我该如何阻止它们命名Bob?
答案 0 :(得分:1)
这很简单,你可以验证范围的唯一性,即:
class Alias < ActiveRecord::Base
validates :alias_name, uniqueness: { scope: :user_id, case_sensitive: false }
# existing code
end
这可以防止创建(或更新)具有相同名称的别名,这些别名属于同一个用户。 case_sensitive
属性使其更严格,即bob, Bob, bOb, boB, BOb, bOB, BOB
被认为是相同的。
您可以在导轨中找到更多相关信息。 guide