如何创建用于在 ember 中创建实体的控制器

How do I create controller for creating entity in ember

我知道我可以将变量添加到控制器中,然后在输入和控制器中访问它们。但是如果我想使用实体,我需要记下它的所有属性。

// controller
name: '',
website: 'http://www.',

actions: {
    doneEditing: function() {
        var name = this.get('name');
        var website = this.get('website');

        var company = this.store.createRecord('company', {
            name: name,
            website: website
        });
        company.save();
    }
}

// template
<p>{{input type="text" value=name}}</p>
<p>{{input type="text" value=website}}</p>

如何才能正确地做到这一点?

答案在这里emberjs.com。只需在路由中创建模型即可。

// route
export default Ember.Route.extend({
    model: function() {
        return this.store.createRecord('company');
    }
});

// controller
actions: {
    doneEditing: function() {
        this.get('model').save();
    }
}

// template
<p>{{input type="text" value=name}}</p>
<p>{{input type="text" value=website}}</p>