我正在尝试实现非常常见的列表/详细信息模式,例如 peepcode 示例中的表格或最近的 tom dale 截屏视频中的博客文章。仅在我的情况下,应选择第一项,并在输入通用 /items 路由时显示详细信息。因此,当您转到 /items 时,它应该自动将 url 更改为 /items/1 并显示列表以及详细信息。
这是我尝试过的:
App.ItemsRoute = Ember.Route.extend({
model: function () {
return App.Item.find();
},
redirect: function () {
if(Ember.isEmpty(this.modelFor('item'))) {
firstItem = this.model().get('firstObject');
this.replaceWith('item', firstItem);
}
}
});
完整示例:http: //jsfiddle.net/ralph/zeKH9/5/
问题是,当您将重定向添加到 items 路由时,不再显示项目列表,只显示项目详细信息(尝试删除 ItemsRoute 中的重定向部分以了解我的意思)。
那么,实现这一目标的最佳方法是什么?