newbie q on activerecord - has_one and has_many on same table?

Hi I have a table where I need to identify one of the children as the
"prime" child.

So, its like:

Parent
  has_many :Child
  has_one: Child :as :prime_child (?)

or something like that? Do I put something like prime_child_id in the
Parent table?
Thanks.

Parent
  has_many :children
  scope :primary, where(:role => 'primary')

Or something like that. The syntax of scope, or named_scope differs depending on the version of Rails, but you get the idea... You'll probably want to add code to make sure that only one child has the primary role for a particular parent.

HTH

JoshK wrote:

Hi I have a table where I need to identify one of the children as the
"prime" child.

So, its like:

Parent
  has_many :Child
  has_one: Child :as :prime_child (?)

or something like that? Do I put something like prime_child_id in the
Parent table?
Thanks.

Yes. You should be able to do
class Parent < AR::B
  has_many :children # not :Child !
  has_one :prime_child, :class_name => 'Child'
end

The two associations are completely independent. The fact that they
refer to the same child class and table is irrelevant.

Best,