0
所以,我试图建立在我的灰烬申请途径动态地从API端点,/categories
,与Ember的数据。为了做到这一点,我加入一个didLoad
方法我的模型,它是由控制器进行调用,并设置为控制器的性能。我将路由映射到我的路由器,并且所有工作正常。当我试图通过由findQuery检索的服务器的数据设置内容属性来设置控制器时,真正的麻烦开始了。灰烬数据 - 类型错误:对象没有方法“eachRelationship”
这是错误:
TypeError {} "Object /categories/548/feeds has no method 'eachRelationship'"
这是代码:
window.categoryRoutes = [];
App.Categories = DS.Model.extend({
CATEGORYAFFINITY: DS.attr('boolean'),
CATEGORYID: DS.attr('number'),
CATEGORYNAME: DS.attr('string'),
CATEGORYLINK: function() {
var safeUrl = urlsafe(this.get('CATEGORYNAME'));
categoryRoutes.push(safeUrl);
return safeUrl;
}.property('CATEGORYNAME'),
didLoad: function() {
var categoryLink = this.get('CATEGORYLINK');
var categoryId = this.get('CATEGORYID');
App.Router.map(function() {
this.resource(categoryLink, function() {
// some routes
});
});
App[Ember.String.classify(categoryLink) + 'Route'] = Ember.Route.extend({
setupController: function(controller, model) {
// source of error
this.controllerFor(categoryLink).set(
'content',
this.store.findQuery('/categories/' + categoryId + '/feeds', {
appid: 'abc123def456',
lat: 39.75,
long: -105
})
);
}
});
}
});
任何 'HALP' 表示赞赏!另外,如果我这样做完全错了,并且有更像Ember的方式来做到这一点,我想知道。
另外,我忘了提,我使用灰烬1.0.0-rc.7和灰烬数据r13.1,从鲍尔,在他们的CommonJS -shims包。 –