4

ActiveRecord를 사용하여 다중 테이블 상속을 구현하려고합니다. 사용 가능한 모든 보석이 꽤 오래된 것처럼 보입니다. 내가 놓친 게 있니? activerecord로 이것을 구현하는 "원시"방법이 있습니까? 내가 레일 3.2.3 및 액티브 3.2.1다중 테이블 상속 레일 및 activerecord

+1

상속 대 클래스 테이블 상속. 답변을 제대로 제공하기 전에 내가 당신이 말하는 것을 결정하는 것이 중요하다고 생각합니다. 이것은 나에게 중요한 주제이므로 제공 할 최신 정보가 있으면 업데이트를 게시하십시오. :) –

답변

1

단일 테이블 상속을 사용하고 (여기서 각 자동차 및 트럭 주 하나의 데이터베이스) 귀하의 경우에는

class Vehicle < ActiveRecord 
end 

class Car < Vehicle 
end 

class Truck < Vehicle 
end 

당신이 오히려 데이터베이스하지만 공유되지 않습니다 기능. 그런 다음 그래서 extend 모듈의 방법으로 그 호출 클래스의 클래스 메소드입니다 모듈을 작성하고이를 각 모델

class Car < ActiveRecord 
    extend VehicleFinders 
end 

class Truck < ActiveRecord 
    extend VehicleFinders 
end 

module VehicleFinders 
    def find_purchased 
    #... 
    end 
end 

에 포함해야한다. include 모듈의 방법은이에 대한 좋은 읽을 수 있습니다 클래스

를 호출하는 개체에 대한 인스턴스 방법입니다 당신 http://raysrashmi.com/2012/05/05/enhance-rails-models 단일 테이블 - 대 멀티 테이블 상속 사이의 정확한 차이에 관한 개발자 사이에 많은 혼란이있다

+0

링크가 더 이상 작동하지 않습니다. – zode64

+0

새 링크는 끝에 .html이없는 http://raysrashmi.com/2012/05/05/enhance-rails-models입니다. –