데이터베이스에 클래스를 저장하기 위해 ActiveRecord를 사용하고 있습니다.Castle 프로젝트에서 생성하는 다형 클래스 ActiveRecord
클래스 계층 구조를 가지고 있습니다. 인간과 클래스 Human에서 상속 된 남자와 여자. 휴먼 데이터베이스 테이블에는 남성의 경우 0, 여성의 경우 1 인 섹스 필드가 있습니다. 나는 성 필드에 관해 클래스 Human을로드 할 수 있기를 원합니다. 즉, Sex가 0이면 클래스 Human의로드는 실제로 Man 클래스의 인스턴스를 작성해야합니다 (따라서 Human의 필드 외에 Man 테이블의 일부 필드를 읽어야합니다. 표).
CastleProject ActiveRecord 속성의 도움으로 가능합니까? 그렇지 않은 경우 대체 가능한 메소드를 재정의하는 것이 가능합니까?
감사합니다. Nebakanezer, 귀하의 회신은 매우 유용합니다. 그러나, 나는 남자 또는 여자 대신에 항상 인간 계급을 얻는다는 문제가있다. DiscriminatorValue를이 클래스에 할당하지는 않았지만 남자와 여자를 위해했습니다. 그러나 이것은 도움이되지 않습니다. Human 클래스의 FindAllByProperty를 사용하고 있으며 Sex 필드에 따라 Man 및 Human 인스턴스 목록을 반환 할 것으로 기대합니다. 내가 뭘 잘못 했니? – Alex
해결 방법을 직접 찾아 냈습니다. 내 하위 클래스 (남자/여자)는 내부 였고 Human은 공개되었습니다. 인간 인스턴스가 끊임없이 생성되는 이유입니다. – Alex