मेरे पास मूल रीढ़ की हड्डी मॉडल है, इसकी urlRoot
विशेषता सेट है और सर्वर पक्ष पर संबंधित लक्ष्य एक सही JSON आउटपुट (JSON स्ट्रिंग और application/json
शीर्षलेख दोनों) देता है।Backbone.js वास्तव में विशेषताएँ सेट नहीं करते
मैं एक फोन इस तरह लाने: इस बिंदु पर
var athlete = new Athlete({ id: 1 });
athlete.fetch();
अगर मैं एक
console.log(athlete);
जोड़ने मैं मॉडल देख सकते हैं, और फ़ायरबग में यह निरीक्षण मैं खोल सकते हैं गुण वस्तु और सर्वर से लौटाए गए सभी मान देखें।
लेकिन अगर मैं एक कार्य करें: मैं undefined
मिल
console.log(athlete.get('name'));
भी (नाम डोम निरीक्षण मैं उपर्युक्त में विशेषताओं के तहत दिखाई देता है) एक कर:
console.log(athlete.attributes);
एक ऑब्जेक्ट देता है जिसमें केवल {id: 1}
होता है जो कि मॉडल बनाने के दौरान पारित तर्क है।
अगर मैं इस तरह मॉडल बनाने:
var athlete = new Athlete(<JSON string copypasted from the server response>);
तो सब कुछ ठीक काम करता है, .get()
विधि रिटर्न जो कुछ भी मैं पूछता हूँ, और athlete.attributes
सभी मूल्यों को दर्शाता है।
मैं क्या गलत कर रहा हूं?
बेशक अब मुझे एहसास हुआ कि यह कितना स्पष्ट था, इंगित करने के लिए धन्यवाद :) –