업데이트 :이 문제에 대해 다시 생각한 후에이 질문에 다형성과 STI가 모두 포함되어 있다고 생각합니다.Rails 다형성/단일 테이블 상속 모델
class Vehicle < ActiveRecord::Base
belongs_to :dealership
...
end
class Car < Vehicle
...
end
class Truck < Vehicle
...
end
기록 자동차 및 트럭 모델은 모델에서 동일한 속성하지만 서로 다른 논리를, 그래서 그들 모두는 단지 차량 테이블을 사용
의 다음 I가 있다고 가정 해 봅시다.
누군가가 새로운 차량 기록을 만들고 "자동차"인지 "트럭"인지 선택할 수있는 일반 양식을 만들고 싶습니다. 백엔드에서이 양식은 일반 "Vehicle"레코드가 아닌 "Car"또는 "Truck"레코드를 생성해야합니다.
질문 : 이 옵션을 Rails 양식에 어떻게 표시 하시겠습니까? 구체적으로, 추상 기본 모델의 하위 유형을 나열하는 메소드가 있습니까? 그리고/또는이를 폼의 Select 요소처럼 제시 할 수있는 간단한 방법이 있습니까?
자동차 나 트럭을 자동차와 트럭 용으로 두 가지 형태로 만드는 것에 반대 할 수있는 양식을 만드는 이유는 마침내이 모델이 부모님에게 중첩되도록하는 것입니다. " 판매권." 나는 새로운 차량을 만들고 옵션으로 "자동차"또는 "트럭"을 선택할 수있을뿐만 아니라 사용자가 "딜러"를로드하고 모든 자동차를 보거나 편집 할 수있는 중첩 된 양식을 가질 수 있기를 바랍니다. 그 딜러에 속한 트럭을 단일 형태로 나는 Vehicle belongs_to :dealership
과 같은 간단한 연관에서 accepts_nested_attributes_for
을 사용하여이를 설정하는 방법을 알고 있지만 Vehicle에서 상속 한 하위 모델을 설정하는 방법을 잘 모르겠습니다.
너는 내가 실제로 다형성과 STI를 모두보고있는 것을 안다. 내가 원래 질문을 썼을 때 나는 그들과 약간 섞여 있었다. 의견을 보내 주셔서 감사합니다! – Andrew
네, 지금 무슨 뜻인지 이해합니다. 내가 당신을 위해 유용한 링크를 찾은 것 같아요 : http://stackoverflow.com/questions/5047613/rails-model-inheritance-in-forms – gabrielhilal