【发布时间】:2016-02-07 11:47:10
【问题描述】:
我有一个 post 模型和一个 cmets 模型,如下所示:
// app/models/post.js
import DS from 'ember-data';
export default DS.Model.extend({
//....
comments: DS.hasMany('comment'),
//....
})
// app/models/comment.js
import DS from 'ember-data'
export default DS.Model.extend({
//....
ad: DS.belongsTo('post'),,
//....
})
在app/router.js我有
Router.map(function() {
this.route('post', {path: '/post/:post_id'}, function() {
this.route('comments');
});
)};
我在app/templates/post.hbs 中有一个post 模板,看起来像这样:
<h2>{{model.title}}</h2>
<p>{{model.body}}</p>
{{#link-to "post.comments"}}
<h2>Comments</h2>
{{/link-to}}
{{outlet}}
我还有一个模板来渲染app/templates/post/comments.hbs中的cmets
{#each model as |comment|}}
<p>{{comment.body}}</p>
{{/each}}
{{outlet}}
我希望当有人点击帖子模板上的 cmets 链接时,在帖子模板的 {{outlet}} 上呈现 cmets 模板。我遇到的问题是获取comments 模型的数据。我在app/routes/post/comments.js 中有一条comments 的路线,它看起来像这样:
import Ember from 'ember';
export default Ember.Route.extend({
model(){
//I don't know what to do here.
}
});
我的后端服务器中的 cmets 暴露在 /posts/:post_id/comments 端点上。如何获取 cmets 模板上的 cmets?
【问题讨论】:
标签: javascript templates ember.js