2013-10-24 2 views
1

Рассмотрим следующий пример:Как создать объект определенного типа с помощью отношения has_many?

class Person < ActiveRecord::Base 
end 

class Man < Person 
end 

class Woman < Person 
end 


class Society < ActiveRecord::Base 
    has_many :person 

    def addPeople 
     people.create(:name => "bill") 
     people.create(:name => "sue") 
    end 
end 

Как определить тип этого человека? Например, я хочу создать счет как мужчина и подать в суд на женщину. Каков правильный способ сделать это?

ответ

4

Укажите тип объекта его класса

class Society < ActiveRecord::Base 
    has_many :persons 

    def add_people 
    self.persons << Man.create name: 'bill' 
    self.persons << Woman.create name: 'sue' 
    end 
end 
+0

Это сделал трюк. Благодаря! – dmarra

Смежные вопросы