중첩 데이터를 사용하여 응용 프로그램을 작성하기 위해 백본 관계형을 사용하고 있습니다. 데이터 구조의 최상위 수준에는 대부분의 데이터 (MB 단위)가 포함되지만 독립형 항목으로는 사용되지 않습니다. 그것은 단지 관련된 아이들의 속성을 구체화하는 데 사용됩니다 (플라이 웨이트 패턴?). 백본 관계형을 사용하여 데이터 구조 반전하기
나는 다음과 같은 데이터 구조records = [
{performerName: 'Jane', details: {composerName: 'Beethoven', ... }},
...
]
같은 것을 사용하고 브라우저로 모든 데이터를 전송하려면 그리고 이것은 다음 두 가지 모델, Piece
및 Performance
에 의해 캡슐화 - 모두 Backbone.RelationalModel 만에서 상속
relations: [
{
type: 'HasOne',
key: 'piece',
relatedModel: 'Piece',
reverseRelation: {
key: 'performances'
}
}
],
다음 다음 공연 컬렉션 원래 JSON에서 직접 구축 될 수 Performance
정의 된 관계를 갖는다.
이 모든 것이 정상적으로 작동하지만 문제는 각 각의 데이터가 여러 개의 성능을 가지고 있으므로 각기 다른 크기의 데이터를 전송한다는 것입니다. 다운로드 크기가 훨씬 커질 수 있습니다.
가볍고 가벼운 데이터 구조 (아래와 같이 중복을 피하는 다른 구조와 같이)를 보내는 가장 좋은 방법은 무엇입니까? 아직 작업 할 필요가있는 공연 컬렉션을 비교적 쉽게 만들 수 있습니다.
records = [
{composerName: 'Beethoven', ..., performances: [array of jsons, one for each performance]
...
]