Javascript 使用余烬渲染辅助对象时无法保存模型
我正在将模型渲染到父模板中,如下所示:Javascript 使用余烬渲染辅助对象时无法保存模型,javascript,ember.js,handlebars.js,Javascript,Ember.js,Handlebars.js,我正在将模型渲染到父模板中,如下所示: {{render "teacher" teacher}} 这是它的控制器: App.TeacherController = Ember.ObjectController.extend(App.EditableModelMixin, { actions: { saveTypes: function() { if (this.get('model')) console.log('Exists');
{{render "teacher" teacher}}
这是它的控制器:
App.TeacherController = Ember.ObjectController.extend(App.EditableModelMixin, {
actions: {
saveTypes: function() {
if (this.get('model')) console.log('Exists');
console.log(this.get('model'));
console.log(this.get('model').get('isFulfilled'));
this.get('model').save();
}
}
});
以下是调用此方法时的输出:
Exists
Class {isFulfilled: true, toString: function, constructor: function, reason: null, isPending: undefined…}
true
Uncaught TypeError: Object [object Object] has no method 'save'
这种做事方式以前对我来说没有问题。这似乎只有在我使用渲染时才会发生
更新
下面是我在Ember Inspector中查看TeacherController
的屏幕截图:
另一个只是我的视图层次结构:
该模型似乎是一个PromiseObject(来自异步映射)。Promise对象是Ember.ObjectProxy的扩展,它将代理实际模型(如果存在)的属性调用,但这些方法没有代理
var modelPromise = this.get('model');
modelPromise.then(function(actualModel){
actualModel.save();
});
你能告诉我家长控制器里的老师是什么吗?我想可能是一个项目控制器。我正在想办法。我该怎么办?我是说,我不知道你的意思。我可以向您展示我的模型
定义,或控制台日志,或ember调试器的打印输出。这里有一个显示控制台日志的粘贴箱,展开后您可以看到一些重要内容。抱歉,工作区imgur,如果我昨天看到你的照片,我可能会帮得更轻松,我的坏朋友,我真的很高兴哈哈哈这几个星期来一直是我心中的一根刺。w00t,很高兴听到这个消息!我喜欢一个最终有意义的难题。