我希望能够在实际保存之前修改/验证数据。
App.Post = DS.Model.extend({
title: DS.attr('string'),
author: DS.attr('string'),
date: DS.attr('date', { defaultValue: new Date() }),
excerpt: DS.attr('string'),
body: DS.attr('string')
});
App.PostsNewRoute = Ember.Route.extend({
model: function() {
return this.get('store').createRecord('post');
},
actions: {
doneEditing: function() {
debugger;
this.modelFor('postsNew').save();
this.transitionTo('posts.index');
}
}
});
所以,在我想要的.save()
之前的问题,让我们说,验证标题不是空的。
我尝试的所有东西都是未定义的,或者[Object object]没有.val()方法。我不知道如何获得模型的值。我怎么能这样做?
我想到的另一件事。 defaultvalValue是否按预期工作?我想将Date()设置为每个新创建的帖子。不知怎的date
没有被记录,因为它没有显示。
感谢。
答案 0 :(得分:2)
App.PostsNewRoute = Ember.Route.extend({
model: function() {
return this.get('store').createRecord('post');
},
actions: {
doneEditing: function() {
debugger;
var model = this.modelFor('postsNew');
var title = model.get('title');
model.save();
this.transitionTo('posts.index');
}
}
});