保存从模态组件中呈现的表单中捕获的数据

Ember - v1.7.0
Ember Data - v1.0.0-beta.10


我创建了一个使用zurb基础5 CSS框架显示功能的模式组件,虽然都运行良好,但无法保存从控制器保存操作中的表单中捕获的数据。

在保存按钮执行时处理的控制器

App.PersonModalController = Ember.ObjectController.extend({
    actions: {
        close: function() {
            return this.send( 'closeModal' );
        },

        save:function() {
            this.get('model').save();
        }
    }
});

我们面临的问题是this.get('model').save()不起作用,数据不会发布到安静的后端。

我不确定如何去存储从窗体捕获的数据,当我console.log( this.get('model') ); 它似乎是一个适当的模型对象与所有的花里胡哨。

我试图获得商店来增加模型,但这并不起作用。

A.附录

在四处搜索后,我发现了一些与this.get('model').save()有关的Stack Overflow问题this.get('model').save()看起来并不像预期的那样工作,可能是基于上下文。

差之间的模型保存抗模型getstore提交
烬-JS-如何对保存-A模型
保存记录-的模型 - 是 - 不工作,在-烬数据-1-0-0-β-3

当我将代码更改为以下内容时:

App.PersonModalController = Ember.ObjectController.extend({
    actions: {
        close: function() {
            return this.send( 'closeModal' );
        },

        save:function() {
            var person = this.store.createRecord('person',{firstName:firstName,lastName:lastName});
            person.save();
        }
    }
});

它将数据正确地POST到后端并保存,但我相信必须有更好的方法,因为如果你有一个带有50个字段的表单,你不会想要手动设置每个属性。

在仔细检查之后,虽然发布了,但发布的数据是空的。


我会尝试继续你的保存方法,就像在Bart的回答中一样,这个问题是关于如何保存模型问题的。

person.save().then(function() {
  // SUCCESS
}, function() {
  // FAILURE
});

并在这些方法我会console.log()的结果。

我会想象它与保存功能的承诺方面有关。

链接地址: http://www.djcxy.com/p/64077.html

上一篇: Saving data captured from form rendered in a modal component

下一篇: How to get errors on Ember hasMany (child) records submitted to API during Save