मैं वास्तव में एम्बर-डेटा के आरईएसटी एडाप्टर और नेस्टेड संसाधनों के साथ संघर्ष कर रहा हूं और किसी भी मदद की सराहना करता हूं ... मैं एम्बर के नवीनतम (1.0.4pre) संस्करण का उपयोग कर रहा हूं और एम्बर-डेटा (संशोधन: 11)।एम्बर-डेटा के आरईएसटी एडाप्टर और नेस्टेड संसाधनों के साथ संघर्ष
2 साधारण मॉडल है:
App.User = DS.Model.extend({
name: DS.attr('string'),
email: DS.attr('string'),
schemes: DS.hasMany('App.Scheme')
});
App.Scheme = DS.Model.extend({
name: DS.attr('string'),
users: DS.hasMany('App.User')
});
और सरल नेस्टेड मार्गों:
Router.map(function() {
this.resource("user", { path: "users/:user_id" }, function() {
this.resource("schemes");
});
});
मैं एक रेल 3 JSON एपीआई जो निम्नलिखित अंतिमबिंदुओं है है:
/users/:user_id
/users/:user_id/schemes
जब मैं अपने एम्बर ऐप में users/:user_id/schemes
पर नेविगेट करता हूं, मैं सभी उपयोगकर्ता की योजनाओं को पुनर्प्राप्त करना चाहता हूं, हालांकि डिफ़ॉल्ट रूप से Em बियर-डेटा अनुरोध /schemes
, जो मेरे एपीआई में एक एंडपॉइंट नहीं है - मैं इसे जोड़ सकता हूं लेकिन मुझे उपयोगकर्ता द्वारा योजनाओं को गुंजाइश करने की आवश्यकता है, मेरे पास current_user की अवधारणा नहीं है क्योंकि मैं किसी भी उपयोगकर्ता और उसकी योजनाओं को देखना चाहता हूं।
क्या एम्बर को /users/:user_id/schemes
पर देखने के लिए या एम्बर के डिफ़ॉल्ट AJAX कॉल को क्वेरी पैरामीटर जोड़ने के लिए मजबूर करने का कोई तरीका है, उदाहरण के लिए: /schemes?user_id=:user_id
?
वैकल्पिक रूप से, क्या AJAX अनुरोध शीर्षलेख में जोड़ने का कोई तरीका है, जो बदले में मेरी रेल एपीआई /schemes
तदनुसार प्रतिक्रिया को पढ़ और स्थापित कर सकता है?
धन्यवाद @ahmacleod। 'App.Scheme.find ({user_id: 'id'} का उपयोग करके); 'अभी के लिए काम करता है, लेकिन यह एक सस्ते कामकाज की तरह लगता है। मुझे लगता है कि युवा प्रौद्योगिकी के साथ सवार होने की बात आती है! – olvado