Ember - 保存更新模型而非用户类型

时间:2014-02-27 14:19:32

标签: ember.js ember-data ember-app-kit

我正在使用Ember App Kit和Ember Data创建一个应用程序。我有一个项目资源,同时具有创建和编辑表单。出于各种设计原因,我不希望在用户点击保存按钮之前更新或创建模型。我不确定在Ember中执行此操作的最佳设计模式,因为默认情况下将表单字段绑定到模型,该模型在数据输入时更新它。

2 个答案:

答案 0 :(得分:2)

您需要在控制器上创建临时属性。

App.FooController = Em.ObjectController.extend({
    userName: '',

    createData: function() {
        this.get('store').createRecord({
            name: this.get('userName')
        }).save();

        this.set('userName', '');
    },

    saveData: function() {
        this.set('model.name', this.get('userName'));
        this.set('userName', '');
    }
});

绑定到文本字段的userName属性(或其他),然后在用户单击保存按钮时传输该值。

答案 1 :(得分:1)

或者,您可以创建复制模型属性的Ember.Object,然后将表单绑定到该对象。然后在保存时将属性复制回模型。你可以用这种方式保存一些代码。