मैं यह पता लगाने की कोशिश कर रहा हूं कि 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'
जब मैं निम्नलिखित स्थिति की तरह कुछ है मैं एक फ़ंक्शन निष्पादित करने का प्रयास करता हूं जो मान्य करता है (जैसे जोड़, fetch, ...)
यह मी यदि मैं validate
या _validate
फ़ंक्शन किसी भी संग्रह या मॉडल में जोड़ता हूं तो कोई फर्क नहीं पड़ता।
मेरा मानना है कि ऐसा इसलिए है क्योंकि backbone.js संग्रह में संग्रह का समर्थन नहीं करता है। क्या कोई और तरीका है जो काम करता है?
अद्यतन:
यह है कि यह कैसे अभी
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
});
लगता रीढ़ डॉक्स अब नेस्टेड मॉडल और संग्रह, बहुत उदाहरण यहां के समान पर एक अनुभाग शामिल की तरह: http://backbonejs.org/#FAQ-nested –
पहले - खुशी है कि आप अपनी समस्या को हल किया। उम्मीद है कि यह कुछ अन्य लोगों के लिए उत्तर देगा, लेकिन आपकी समस्या गलत तरीके से परिभाषित डेटा मॉडल से आती है - कोई "प्लेलिस्ट" नहीं है (आपके पास केवल एक प्लेलिस्ट ऑब्जेक्ट है, जिसे एक ही स्थान पर समूहीकृत किया जाता है), आपके डेटा में केवल "प्लेलिस्ट" और " ट्रैक ", और संबंध 1 प्लेलिस्ट में कई ट्रैक हो सकते हैं। आपके सरल (हल) उदाहरण में यह पैटर्न बहुत स्पष्ट दिखाई देता है। – Dainius