我有一个问题,我有一个新路线的资源。当我过渡到那条新路线时,我创建了一个新对象。在表单上,我有取消按钮,它会删除该对象。但是,如果我单击导航上的链接,例如返回资源索引,则该对象与我在表单中输入的任何内容都存在。管理创建对象然后离开表单的最佳方法是什么?
我的路线:
App.Router.map(function() {
this.resource('recipes', function() {
this.route('new');
this.route('show', { path: '/:recipe_id' });
});
this.resource('styles');
});
App.RecipesNewRoute = Ember.Route.extend({
model: function() {
return App.Recipe.createRecord({
title: '',
description: '',
instructions: ''
});
},
setupController: function(controller, model) {
controller.set('styles', App.Style.find());
controller.set('content', model);
}
});
我的新路线控制器:
App.RecipesNewController = Ember.ObjectController.extend({
create: function() {
this.content.validate()
if(this.content.get('isValid')) {
this.transitionToRoute('recipes.show', this.content);
}
},
cancel: function() {
this.content.deleteRecord();
this.transitionToRoute('recipes.index');
},
buttonTitle: 'Add Recipe'
});
我正在使用版本 1.0.0.rc.1
谢谢!