我正在制作一个emberjs应用程序原型。我在尝试保存数据时遇到问题。
我的模特:
App.User = DS.Model.extend({
id: DS.attr('string'),
name: DS.attr('string'),
description: DS.attr('string')
});
我的控制器:
App.UsersAddController = Ember.ArrayController.extend({
actions: {
addUser: function () {
var name = this.get('name');
var description = this.get('description');
if (!name.trim() && !description.trim()) {
return;
}
var user = this.store.createRecord('user', {
'id': 'id-' + Math.random().toString(36).substr(2, 16),
'name': name,
'description': description
});
this.set('id', '');
this.set('name', '');
this.set('description', '');
user.save();
}
}
});
我的模板:
{{input type="text" placeholder="Name" value=name class="name-input"}}
{{input type="text" placeholder="Description" value=description class="name-input"}}
<button {{action 'addUser'}} class="submit">Submit</button>
事件冒泡到正确的控制器。但未能保存。我是emberjs的初学者。请帮帮我。
答案 0 :(得分:0)
您应该从模型定义中删除id
属性。
App.User = DS.Model.extend({
// no id
name: DS.attr('string'),
description: DS.attr('string')
});