在Ember中的子视图中显示父属性

时间:2014-07-02 16:14:17

标签: ember.js

我有以下观点:

模板/帖/ index.hbs

{{#each}}
  {{~#link-to 'posts.show' this}}
    {{title}}({{category.name}})<br>
  {{~/link-to}}
{{/each}}

帖子属于“类别”,与“帖子”具有has_many关系。

但是,{{category.name}}目前为空。 Chromes ember检查员中的数据选项卡通常为空。

我的json看起来像这样:

{
posts: [
{
  id: 1,
  title: "What's up with Docs?",
  category: 1
},
{
  id: 2,
  title: "Of course, you know, this means war.",
  category: 1
}]
}

我目前在app.com\posts索引页面上,这意味着我只是在使用JSON。

根据ember文档(http://emberjs.com/guides/models/the-rest-adapter/#toc_relationships),看起来我的json格式正确。但是,我显然有一个问题是拉入类别属性。

以下是我的余烬模型:

import DS from 'ember-data';

export default DS.Model.extend({
    name: DS.attr('string'),
    posts: DS.hasMany('post')
});

export default DS.Model.extend({
    title: DS.attr('string'),
    category: DS.belongsTo('category')
});

任何帮助都会很棒。再次..我只是想在帖子视图上显示孩子的(帖子)父母(类别)名称。

由于

1 个答案:

答案 0 :(得分:0)

category: DS.belongsTo('category')或者需要定义为异步category: DS.belongsTo('category', {async:true}),或者您需要在响应中包含该类别。

{
  posts: [
  {
    id: 1,
    title: "What's up with Docs?",
    category: 1
  },
  {
    id: 2,
    title: "Of course, you know, this means war.",
    category: 1
  }],
  categories: [
  {
    id: 1,
    ...
  }
  ....
]
}