Rails AR validates_uniqueness_of against polymorphic relationship

Posted by aaronrussell on Stack Overflow See other posts from Stack Overflow or by aaronrussell
Published on 2010-03-31T21:27:41Z Indexed on 2010/03/31 21:33 UTC
Read the original article Hit count: 315

Is it posible to validate the uniqueness of a child model's attribute scoped against a polymorphic relationship?

For example I have a model called field that belongs to fieldable:

class Field < ActiveRecord::Base
  belongs_to :fieldable, :polymorphic => :true
  validates_uniqueness_of :name, :scope => :fieldable_id
end

I have several other models (Pages, Items) which have many Fields. So what I want is to validate the uniqueness of the field name against the parent model, but the problem is that occasionally a Page and an Item share the same ID number, causing the validations to fail when they shouldn't.

Am I just doing this wrong or is there a better way to do this?

© Stack Overflow or respective owner

Related posts about ruby-on-rails

Related posts about activerecord