Como adicionar um registro filho ao registro pai existente?

Eu estive pesquisando e vasculhando o Stack Overflow para algum tipo de dica sobre este assunto, mas a informação está espalhada na melhor das hipóteses.

Estou tentando criar um novo registro filho (Comment) e salve-o em um registro pai existente (Post). Eu estou usando o Ember-Model, em vez de Ember-Data, mas quaisquer dicas ou ponteiros seriam muito apreciados.

No momento, tenho tido sucesso em criar um novo e incorporadoComment mas quando é criado com umNovo Post registro. Assim:

Como faço para carregar / recuperar a carga atualmente carregada?Post(registro pai) para aplicarComments (registros filho) para isso?

Eu tenho lido sobre as dependências do controlador, usandoneeds: ethis.controllerFor ethis.modelFor para ter acesso a outro controlador / modelocontent mas não conseguimos conectar essas coisas em algo significativo.

De qualquer forma, aqui está o que eu reduzi meu código de aplicação, na esperança de que eu possa ser capaz de tropeçar na maneira correta de fazer isso ...

Rotas
    App.Router.map(function() {
      this.resource('post', { path: '/:post_id' }, function() {
        this.resource('comments', { path: '/comments'} );
        });
    });

Eu removi todos os outros recursos e rotas, então eu fiquei comApp.Post, App.PostIndexeApp.Comments. Acho que minhas rotas são o problema aqui, suponho que não estou implementando corretamente os métodos para usar oPost gravar na minhaComments rota.

    App.IndexRoute = Ember.Route.extend({
      model: function() {
        return App.Post.find();
      },

      setupController: function(controller, model) {  // I'm not certain if this
        controller.set('content', model);           // setupController is needed?
      }

    });

    App.PostRoute = Ember.Route.extend({
      model: function(params) {
        return App.Post.find(params.post_id);
      },

      setupcontroller: function( controller, model) { // again, unsure if this
          this.controllerFor('post').get('comments'); // is correct.
            controller.set('content', comments);
      }

    });

    App.CommentsRoute = Ember.Route.extend({
      afterModel: function() {
          this.set('post', this.modelFor('post'));
        },

      setupcontroller: function( controller, model) {
          this.controllerFor('post').get('comments');
            controller.set('content', comments);
        }

    });
Controlador
App.CommentsController = Ember.ArrayController.extend({
  needs: "post",

  actions: {

     addComment: function() {
          var post = App.Post.create({
            title: 'static post title'
          });

              post.get('comments').create({
                message: 'static message'
            });

              post.save();

      }

  }

});

Este é o meu atual Controlador de Comentários, que pode criar um novoPost com um incorporadoComment. Eu encontrei e foi dado numerosos exemplos em que para criar oComment, mas nenhum parece funcionar para mim. Basicamente, estou lutando para definir ovar post = ... como o registro atualmente carregado. Eu implementei várias abordagens em uma tentativa de tentativa e erro. Até agora eu tentei:

var post = App.Post.create();, retorna a propriedade indefinida, pois isso criaria um novo registro. No entanto, eu dei uma chance, como todos os exemplos que vi relacionados a isso definiram seu registro como tal.

var post = this.get('post');, retorna um não pode chamar "get" em indefinido. Eu tentei usar este método de definir o meu post atual em ambos osComments controlador ePost controlador.

var post = this.get('controllers.post.content);, retorna um 'erro cíclico' do backend que estou usando.

var post = App.Post.find();, retorna um não pode chamar "get" em indefinido.

var post = App.Post.find(1);Novamente, retorna um não pode chamar 'get' em undefined. Pensei em dar uma chance porque esse é um daqueles exemplos recorrentes que as pessoas fornecem. O backend que eu uso aplica seu próprio ID a cada registro, e não tenho certeza se conseguiria / como ter o.find() use um valor de ID dinâmico e recupere somente o modelo que acabei de carregar.

Eu estou supondo que não estou configurando adequadamente minhas dependências de Rotas e Controladores?

Se alguém tiver uma sugestão, link relevante ou correção, ficaria muito grato.

Este (aparentemente simples) problema / caso de uso me tem no final da inteligência neste momento.

questionAnswers(1)

yourAnswerToTheQuestion