验证belongs_to,has_many关系中字段的唯一性

时间:2012-03-05 01:26:42

标签: ruby-on-rails ruby-on-rails-3 activerecord

我有两个轨道Active Record模型组和帐户

group

    has_many :accounts

    id 
    name
    .. other infromation
    timestamps


Account

    belongs_to :group

    id
    name
    .. other information
    timestamps

我需要做一个验证:name,:uniqueness =>在帐户部分中为true,但仅在组下方。在我希望帐户名称在组下是唯一的。我知道我可以强制执行数据库唯一约束,但我可以使用AR吗?它甚至可能吗?

1 个答案:

答案 0 :(得分:9)

试试这个:

validate :name, :uniqueness => true, :scope => :group_id

有关可用于验证的选项的更多信息,请查看ActiveRecord Validations documentation