Ember.js pre4多个嵌套路由

时间:2013-02-05 16:49:46

标签: ember.js

在ember.js pre 4中,我正在尝试实现响应以下路由(以及其他路由)的路由:

/contact/[id]
/contact/edit
/contact/new
/contact/list
/contact/list/my
/contact/list/team
/contact/list/groups

我可以管理的第一条路线(最多列表): 列表的变体(我/团队/团队)是我在努力的地方。我得到一个:“调用它时,没有路由处理URL'/ contact / list / my'错误。

我尝试过如何实现这种嵌套的多种变体。这是我目前的尝试:

    App.Router.map(function()
    {
        this.route("index");

        this.resource("contact", function(){
            this.route('new');
            this.route('show', { path: "/:contact_id" });
            this.route('edit', { path: "edit/:contact_id" });
        });

        this.resource("contact.list", function(){
            this.route("index");
            this.route("my");
        });


    });

查看App.Router.router.recognizer.names:我看到以下输出:

contact.edit: Object
contact.index: Object
contact.list.index: Object
contact.list.my: Object
contact.new: Object
contact.show: Object
index: Object
__proto__: Object

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

这似乎对我有用:

    App.Router.map(function()
    {
        this.route("index");

        this.resource("contact", function(){
            this.route('new');
            this.route('show', { path: "/:contact_id" });
            this.route('edit', { path: "edit/:contact_id" });
            this.resource("contact.list", { path: "list/" },function(){
                this.route("index");
                this.route("my");
            });
        });
    });