以下路线设置来自Ember.JS文档(http://emberjs.com/guides/routing/defining-your-routes/),我必须处理同等问题:
App.Router.map(function() {
this.resource('post', { path: '/post/:post_id' }, function() {
this.route('edit');
this.resource('comments', function() {
this.route('new');
});
});
});
根据文档和我自己的经验,这会导致以下路线:
/post/:post_id/comments -> App.CommentsIndexRoute
但是,因为我想要一个特定于帖子后的评论路线,我希望
/post/:post_id/comments -> App.PostsCommentsRoute
我的谬误究竟是什么?为实现目标,我需要改变什么?
答案 0 :(得分:1)
只有route
与他们的父resource
分享他们的名字。如果你希望它显示为PostsCommentsRoute
,那就更像是这样(注意我将它复数以匹配你的例子,尽管网址没有被复数化)
App.Router.map(function() {
this.resource('posts', { path: '/post/:post_id' }, function() {
this.route('comments');
});
});