我试图在快速路由器中实现一种方法,它会通过_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>
我可以轻松获得我的嵌入式文档的_id(单个评论),但我无法获得我的父级(电影)文档的_id。
在后端,一切似乎都没问题,但我收到404错误,因为movie._id为空,所以我的link(/movie/comment/delete//58111f46d7cf8730305e1d5c)
与路由器中的模式不匹配。
我用这个填充了我的观点:
Movie.findById(req.params.id).populate('comments').exec(function(err, movie)
并渲染电影对象
答案 0 :(得分:1)
由于#each
中的上下文发生了变化,请尝试升级:
<a href="comment/delete/{{../movie._id}}/{{this._id}}">Delete</a>