Коллекция коллекций Backbone.js

Я пытаюсь выяснить, как создать коллекцию коллекций с backbone.js. Я новичок в позвоночнике. У меня есть что-то вроде следующей ситуации:

 +---------------+               +------------------+
 | Playlists     |               | Playlist         |
 |---------------|          0..* |------------------|
 |               +-------------->| Name             |
 |               |               |                  |
 |               |               |                  |
 +---------------+               +-------+----------+
                                         |
                                         |
                                         |0..*
                                         v
                                 +------------------+
                                 |  Track           |
                                 |------------------|
                                 | Name             |
                                 | Artist           |
                                 |                  |
                                 +------------------+

В коде это выглядит примерно так:

var trackModel = Backbone.Model.extend({
    //trackdata
});

var playlistModel = Backbone.Collection.extend({
    model : trackModel,
    url   : "playlist"
});

var playlistsModel = Backbone.Collection.extend({
    url   : "playlists",
    model : playlistModel   //This pretty sure doesn't work like I want, because there is no model attribute for collections :S
});

Однако я всегда получаю сообщение об ошибке в консоли js:

 Uncaught TypeError: Object [object Object] has no method '_validate'

когда я пытаюсь выполнить функцию, которая запускает проверку (например, add, fetch,...)

Не имеет значения, добавлю функцию validate или _validate к любой из коллекций или моделей.

Я считаю, что это связано с тем, что backbone.js не поддерживает коллекции в коллекциях. Есть ли другой способ, который работает?

UPDATE:

Вот как это выглядит прямо сейчас

var Track = Backbone.Model.extend({ 
    //trackdata 
}); 

var Tracks = Backbone.Collection.extend({ 
    model:Track; 
}); 

var Playlist = Backbone.Model.extend({ 
    //name  : ...
    tracks: new Tracks ()
}); 

var Playlists = Backbone.Collection.extend({ 
    url : "playlists", 
    model : Playlist 
});

Ответ 1

Вы решите свою проблему, превратив ваш Playlist из коллекции в модель. Если вы думаете об этом, Playlist, вероятно, будет иметь другие атрибуты в любом случае (например, имя), которые не будут устанавливаться в коллекции.

Playlists тогда будет набором моделей Playlist (а не коллекций), которые должны работать без ошибок.

var Track = Backbone.Model.extend({
    //trackdata
});

var Playlist = Backbone.Model.extend({
    model : Track
});

var Playlists = Backbone.Collection.extend({
    url   : "playlists",
    model : Playlist
});