使用带有FIXTURES的嵌入对象

时间:2013-08-22 11:09:19

标签: ember.js ember-data

使用REST Adapter,可以通过执行以下操作来嵌入对象:

App.Adapter.map('App.User', {
    properties : {embedded: 'always'},
});

如何使用FIXTURE声明嵌入对象?我试过在模型中指定它:

App.User = DS.Model.extend({
    properties : DS.belongsTo('App.UserProperties', { embedded : true })
});

但这不起作用。是否可以使用FIXTURES嵌入对象?我的FIXTURE看起来像是:

App.User.FIXTURES = [
    { 
        id: 'id1',
        type: 'user', 
        properties : { 
            name: 'Max Smith',
            email: 'max.smith@email.com' }
    },
];

1 个答案:

答案 0 :(得分:2)

FixtureAdapter不支持嵌入式记录,唯一的方法是为FIXTURES模型定义UserProperties

App.User.FIXTURES = [
  { 
    id: 'id1',
    type: 'user', 
    properties : 1
];

App.UserProperties.FIXTURES = [
  { 
    id: '1',
    name: 'Max Smith',
    email: 'max.smith@email.com'
  }
];

此处还有来自FixtureAdapter的@tomdale(余烬数据的创建者之一)的快速声明

  

我不相信夹具适配器支持嵌入式记录   它有什么理由需要吗?   它也不支持underscored_property_names   夹具适配器的想法不是模仿服务器的JSON有效负载   它以Ember Data期望的格式提供存根数据   所以没有嵌入关系,属性名称是camelCased等。

希望它有所帮助。