我正在使用最新版本的 Ember JS (RC1),但我遇到了架构问题:
我有一个非常简单的用例:用户列表和添加用户的表单。我的路由器:
App.Router.map(function () {
this.resource('users', function () {
this.route('new');
});
});
我的路线:
App.UsersRoute = Em.Route.extend({
model:function () {
return App.User.findAll();
}
});
我的控制器:
App.UsersNewController = Em.ObjectController.extend({
saveUser:function () {
//'content' contains the user
App.User.save(this.content);
// here i want to reload the list of users, but it doesn't work
// The application goes correctly to the url /users
// But doesn't call the 'model' function
this.transitionToRoute('users');
}
});
正如我在上面的评论中所说,当我创建一个新用户时,我想重定向到用户列表(该部分有效)并通过调用路由的“模型”方法重新加载用户列表(该部分不't)。
我可以在 UsersController 中编写一个方法来重新加载列表,但是我会在 UsersRoute 和 UsersController 之间产生重复。
有人可以帮我解决这个问题吗?
谢谢
PS:这里有一个小提琴http://jsfiddle.net/vsxXj/