gpt4 book ai didi

ember.js - 如何渲染到父资源的索引 {{outlet}}

转载 作者:行者123 更新时间:2023-12-02 06:05:18 24 4
gpt4 key购买 nike

我有 2 个嵌套资源,在 Ember 路由器中发布和评论。我希望这能反射(reflect)网址:/posts/1/comments/1去这个页面应该,

  • 使用帖子/索引模板呈现 id = 1 的帖子。
  • 使用评论/索引模板
  • 呈现评论 ID = 1 的帖子的评论

    这是 jsbin 上的示例.
    我的路由代码是,
    App.Router.map(function() {
    this.resource('home', { path: '/' });
    this.resource('posts', { path: '/posts' }, function() {
    this.resource('post', { path: ':post_id' }, function() {
    this.resource('comments', { path: 'comments' }, function() {
    this.resource('comment', { path: ':comment_id' }, function() {
    // need explicit index
    });
    });
    });
    });
    });
    模板和其余的 Ember 代码几乎都是库存。唯一不同的是我重定向到 /posts/1/comments/1从家乡路线。

    I can't get the post or the comment to render inside the /index template. Both the Post body and Comment Body are blank.

    It works if I embed the contents of the index template inside the main posts or comments template. But this isn't what I need, the comment needs to be nested inside the Post.

    Any ideas how to get this working? Thanks.


    PS:我正在使用 ember-latest 和 ember-data latest。

    最佳答案

    通常这类问题归结为命名约定。可能 ember 正在寻找您不期望的 Controller 和模板。尝试将以下内容添加到您的应用程序中,然后查看控制台,它将帮助您查看正在使用的路由/ Controller /模板。

    App = Ember.Application.create({
    LOG_ACTIVE_GENERATION: true,
    LOG_TRANSITIONS: true,
    LOG_VIEW_LOOKUPS: true
    });

    此外,这些路线可能比它们需要的更复杂。通常,将“post”路由嵌套在“posts”资源中是没有意义的。评论/评论也是如此。试试这个:
    App.Router.map(function() {
    this.route('posts');
    this.resource('post', { path: '/posts/:post_id' }, function() {
    this.route('comments')
    this.resource('comment', { path: '/comments/:comment_id' });
    });
    });

    关于ember.js - 如何渲染到父资源的索引 {{outlet}},我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17258558/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com