我正在使用最新的余烬和余烬数据。我的设置包括django,django-rest-framework。我的适配器是ember-data-django-rest-adapter。
我有这些模型
App.Game = DS.Model.extend({
name: DS.attr('string'),
thumbnail: DS.attr('string'),
images: DS.hasMany('image', {async: true}),
spritesheets: DS.hasMany('spritesheet', {async: true})
});
App.Image = DS.Model.extend({
name: DS.attr('string'),
absolute_url: DS.attr('string'),
game: DS.belongsTo('game', {async: true}),
spritesheet: DS.belongsTo('spritesheet', {async: true})
});
App.Spritesheet = DS.Model.extend({
name: DS.attr('string'),
columns: DS.attr('number'),
rows: DS.attr('number'),
cell_width: DS.attr('number'),
cell_height: DS.attr('number'),
game: DS.belongsTo('game', {async: true}),
image: DS.belongsTo('image', {async: true}),
animations: DS.hasMany('animation', {async: true})
});
App.Animation = DS.Model.extend({
name: DS.attr('string'),
spritesheet: DS.belongsTo('spritesheet', {async: true}),
});
这条路线:
App.AnimationsRoute = Ember.Route.extend({
model: function(params){
var store = this.store;
var image = this.modelFor('image');
var game = this.modelFor('game');
var spritesheet = image.get('spritesheet');
console.log(game)
if (spritesheet === null) {
spritesheet = store.createRecord('spritesheet',{
name: 'test',
game: game,
image: image
});
console.log(spritesheet.toJSON())
}
return spritesheet.get('animations');
}
});
显然有更多的代码,但这是导致我这个问题的一点。剩下的工作正常。游戏模型正如图像一样正常加载。
我的问题是'形象'和'游戏'属性设置为'未定义'。 这是控制台中的json输出:
Object {name: "test", columns: null, rows: null, cell_width: null, cell_height: null…}
{
cell_height: null,
cell_width: null,
columns: null,
game: undefined,
image: undefined,
name: "test",
rows: null
}
我已经疯了很久了。有人提出任何线索吗? 此外,我知道我可能不应该在路线上进行创作,但我只是想让它现在正常工作