사진 및 앨범이 포함 된 백본에서 병합 된 컬렉션이 있습니다.Backbone.js : 동일한 ID를 가진 여러 모델을 포함한 컬렉션
이들을 구별하기 위해 type
필드를 추가했습니다. photo
또는 album
입니다. 내가 컬렉션을 채울 때, 나는 Collection#model
방법 내에서 서로 다른 모델을 만들
model: (attrs, options) ->
switch attrs.type
when 'album' then new App.Models.Album(attrs, options)
when 'photo' then new App.Models.Photo(attrs, options)
사진과 같은 ID와 앨범을 추가 할 경우 지금은 이상한 버그를 연구해 왔습니다 병합의 결과 (의이 2
을 가정 해 봅시다).
나는 이것을 소스 코드에서 these LOC로 추적했다. Backbone 자체를 만들지 않고는 되돌릴 수없는 것처럼 보입니다. 나는 그것을 시도했다 그러나 또한 fails 35 tests.
- 내가 ID에 접두사를 추가 할 수 있습니다 나는, 내가 하나 더 그들 중 어떤 모르는이 일의 4 개 가지 방법을 생각했다.
photo_2
을 예로 들어 보겠습니다. 이로 인해 백엔드가 변경되고 프런트 엔드의 일부 변경 사항이 서버에 충돌하지 않습니다./photos/photo_2
- 백본 및 change these LOC를 포킹 할 수 있습니다. 나는 두 개의 별도의 컬렉션을 만들 수 있지만, 병합 및 뷰의 종류를 처리 할 수
- 내가의 사진이 부착 된 신분증과 함께 시작할 수
- (클라이언트의 성능에 영향을 미친다 및 백엔드의 재 작성 필요),의는
1000000
을 가정 해 봅시다 . 이렇게하면 주어진 ID로 사진을 업로드 한 사용자가 동일한 ID로 앨범을 만들 가능성이 크게 떨어집니다.
모델을 속성이 아닌 인수로 가져 오는 방법이 있습니까? –