다형성 트리 테이블을 배열의 핵심으로 사용하는 콘텐츠 관리 시스템 응용 프로그램이 있습니다. 나는 트리가 꽤 커지면 문제가 생긴다. 우리가 꽤 다른 모듈 (약 25 개)을 가지고 있기 때문에, include => : 인스턴스가 겨자를 자르지 않는다. 인스턴스는 우리의 다형성 관계의 이름입니다.다형성 관계로 열 캐싱
재미있는 점은 대부분이 항목의 큰 목록을 원할 때 (예 : 색인 막대의 목적으로) 연관된 표의 이름이 실제로 필요하다는 것입니다. 나머지는 모두 중앙 테이블. 그래서 나는 아마도 중앙 테이블의 이름에 대해 일종의 컬럼 캐시를 구현해야한다고 생각했다. (레일스가 이미 수행하는 카운터 캐시처럼).
이미 이것을 관리하기위한 플러그인이 있는지 궁금한가요?
그렇지 않은 경우는, 그냥 중앙 테이블에 '이름'열을 추가 거라고 모든 다형성 모델은 슈퍼 클래스를 상속하기 때문에 항목이있을 때마다, 단지 중앙 테이블에 걸쳐 이름을 밀어 콜백을 추가 생성 또는 업데이트되었습니다. 처음에는 채우기 위해 큰 마이그레이션을 수행할까요?
그 디자인에 결함이 있습니까?
필자는 필 요한 경우 나중에 다른 항목을 저장할 수있는 일종의 직렬화 된 캐시 일 수 있다고 생각합니다. 가! : D