이 콜름의 이름을 재정의 할 수 있습니까? STI를 사용하기 위해 응용 프로그램의 일부를 변경하고 있으며 사용중인 다른 필드가 있습니다. 나는 또한 그것이 정수 유형이어야한다.Rails/ActiveRecord - 단일 테이블 상속 - 재정의 유형 필드
아이디어가 있으십니까?
이 콜름의 이름을 재정의 할 수 있습니까? STI를 사용하기 위해 응용 프로그램의 일부를 변경하고 있으며 사용중인 다른 필드가 있습니다. 나는 또한 그것이 정수 유형이어야한다.Rails/ActiveRecord - 단일 테이블 상속 - 재정의 유형 필드
아이디어가 있으십니까?
당신은 이름 변경 set_inheritance_column
를 사용할 수 있습니다
는 주어진 값에 사용하는 상속 컬럼의 이름을 설정, 또는 지정된에 의해 반환되는 값 (값이
nil
또는false
경우) 블록.
그러나 열은 여전히 AR 같은 문자열을 넣어하기를 원할 것입니다 수있다 the class name in there :
단일 테이블 상속
액티브 레코드는 열에있는 클래스의 이름을 저장하여 상속을 할 수 있습니다 기본적으로이 이름은 "type"입니다 (덮어 쓰면 변경할 수 있습니다Base.inheritance_column
).
는 액티브 :: ModelSchema의 코드 (3.2)에 따르면, set_inheritance_column
방법은 현재 사용되지 않으며 당신은 self.inheritance_column = column