2016-10-26 4 views
0

私はエクスプローラでメソッドを実装しようとしています。それは親ドキュメントから組み込みドキュメントを_idで削除します。親ドキュメントの_idを取得する方法

私のコードは次のようになります。

.hbs

<table class="table table-striped table-bordered"> 
    <tr> 
     <th>Title</th> 
     <th>Description</th> 
    </tr> 
    <tr> 
     <td>{{movie.title}}</td> 
     <td>{{movie.genre}}</td> 
    </tr> 
</table> 
<br> 
<table class="table table-striped table-bordered"> 
    <tr> 
     <th>Author</th> 
     <th>Comment</th> 
     <th>Action</th> 
    </tr> 
    {{# each movie.comments}} 
    <tr> 
     <td>{{this.author}}</td> 
     <td>{{this.comment}}</td> 
     <td><a href="comment/delete/{{movie._id}}/{{this._id}}">Delete</a></td> 
    </tr> 
    {{/each}} 
</table> 

(私は簡単に私の組み込みのdoc(単一コメント)の_idを得ることができますが、私は私の親の_idを取得することはできません映画)doc。

バックエンドではすべてが正常であるようですが、movie._idが空で、私のlink(/movie/comment/delete//58111f46d7cf8730305e1d5c)がルータのパターンと一致しないため、404エラーが発生します。

私はこれで私の見解を移入:

Movie.findById(req.params.id).populate('comments').exec(function(err, movie) 

とムービーオブジェクト

+0

それともそれだけですサブ文書IDを持つ親文書を見つけることは可能ですか? – JavaEvgen

+2

質問を明確にするために、ルータのコード(またはその一部)を共有する必要があります。また、テンプレートをどのように埋め込むかを説明しないと、何が起きているのかを知ることは不可能です。 – Marcs

答えて

1

をレンダリングコンテキストが#eachに変化するので、レベルを上がってみてください:

<a href="comment/delete/{{../movie._id}}/{{this._id}}">Delete</a> 
+0

私はそれを試してみます。しかし私はすでに解決策を見つけました。私は私のルータで魔法をする – JavaEvgen

+0

あなたの答えが働く!私は頭痛が少なくてもすべてをやることができました:D私は正しい答えとしてURをマークします。それがとても簡単だとは信じられません。私は私のソリューションで私のリンクを短くしていますが、親のdocを見つけるために正しい質問を書くのは難しかったです。子供の文書ID – JavaEvgen

+0

@JavaEvgenええ、代わりに、コメントIDに基づいてムービーを見つけるためのクエリを実行していました。 – robertklep

関連する問題