किसी नियंत्रक के भीतर से मॉडल का उपयोग कैसे किया जा सकता है? वर्तमान में नीचे दिए गए कोड का उपयोग करने से "अपरिभाषित एक फ़ंक्शन नहीं है" (आकृति जेएस असफल हो जाएं ...)।नियंत्रक के अंदर एम्बर एक्सेस मॉडल
मॉडल/plan.js
import DS from 'ember-data';
export default DS.Model.extend({
name: DS.attr('string'),
period: DS.attr('number'),
price: DS.attr('number'),
});
मार्गों/checkout.js
import Ember from 'ember';
export default Ember.Route.extend({
model: function(params) {
return this.store.find('plan', params.plan_id);
}
});
नियंत्रकों/checkout.js
import Ember from 'ember';
export default Ember.Controller.extend({
submitPayment: function(error, result)
{
var plan = this.get('model');
}
}
router.js
Router.map(function() {
this.route('checkout', {path: '/checkout/:plan_id'});
});
शायद 'इस' नहीं 'submitPayment' में नियंत्रक है। जमा करना एक कार्रवाई है? यदि ऐसा है तो आपको इसे एक क्रिया वस्तु के अंदर रखना चाहिए। या सामान्य चेकआउट, मॉडल हुक में मॉडल लाया जा रहा है? – blessenm
सबमिटपेमेंट केवल एक कार्य के भीतर से एक समारोह कहा जाता है। हां, मॉडल संग्रहित किया जा रहा है, वहां कोई समस्या नहीं है। –
'एम्बर। नियंत्रक' को विस्तारित करने के बजाय, 'एम्बर.ऑब्जेक्ट कंट्रोलर' आज़माएं। – blessenm