我正在使用DS.FixtureAdapter,无法使用DS.belongsTo获取相关条目
App.User = DS.Model.extend({
login: DS.attr('string'),
profile: DS.belongsTo('App.Profile')
});
App.Profile = DS.Model.extend({
fullname: DS.attr('string'),
address: DS.attr('string'),
user: DS.belongsTo('App.User')
});
App.Router.map(function() {
this.resource('user', { path: ':user_id' });
});
App.UserRoute = Ember.Route.extend({
model: function(params) {
return App.User.find(params.user_id)
}
});
它只是Rest Adapter的功能吗?
更新
夹具数据是这样的:
类似的东西:
App.User.FIXTURES = [
{
id: 1,
login: "marlus",
profile: 1
}
];
App.Profile.FIXTURES = [
{
id: 1,
fullname: "Marlus Araujo",
address: "Rio",
user: 1
}
];
答案 0 :(得分:1)
尝试:
return this.get('store').find('App.User', params.user_id);
此外,这可能会有所帮助:http://emberjs.com/guides/models/finding-a-record/
答案 1 :(得分:1)
最新版本的Ember Data(1.0.0-beta4),提供了一种使用夹具适配器配置模型的新语法。
App.UserAdapter = DS.FixtureAdapter.extend();
App.User.FIXTURES = [{
id: 1, firstName: 'Bob', lastName: 'Roberts'
}];
App.UsersRoute = Ember.Route.extend({
model: function() {
return this.store.find('user');
}
});
App.UserRoute = Ember.Route.extend({
model: function() {
return this.store.find('user', params.user_id);
}
});