我正在尝试将Ember-Brunch(原始存储库:https://github.com/icholy/ember-brunch)更新为最新的EmberJS和EmberJS-Data框架。我目前遇到的问题是我正在尝试使用DS.Model
中的DS.FixtureAdapter
将原始Bob模型转换为DS.Store
。但无论我尝试什么,我都会遇到让数据显示的问题。以下是几次尝试:
路线:
App.BobRoute = Ember.Route.extend({
model: function() {
return App.Bob.find();
}
});
我收到以下错误:
未捕获的TypeError:无法调用null的“hasOwnProperty”方法
如果我切换到这条路线:
App.BobRoute = Ember.Route.extend({
setupController: function() {
App.BobController.set('content', App.Bob.find());
}
});
我收到以下错误:
未捕获TypeError:对象App.BobController没有方法'set' app.js:184 Uncaught TypeError:无法调用方法'hasOwnProperty' 空
有什么想法吗?
您可以在DS.Model-Implementation-For-Using-Local-DSStore分支中查看我当前的工作https://github.com/seankeating/ember-brunch以及我的尝试。
商品
App.Store = DS.Store.extend({
revision: 11,
adapter: DS.FixtureAdapter.create()
});
控制器:
App.BobController = Em.ObjectController.extend({
});
型号:
var App = require('app'),
attr = DS.attr;
App.Bob = DS.Model.extend({
firstName : attr('string'),
lastName : attr('string'),
lyrics : attr('string'),
fullName: function(){
return this.get('firstName') + ' ' + this.get('lastName');
}.property('firstName', 'lastName')
});
App.Bob.FIXTURES = [{
firstName: 'bob',
lastName: 'marley',
lyrics: 'no woman no cry!'
}];
模板:
<h2>{{fullName}}'s page!</h2>
<button class="btn btn-success" {{action doClick target="view"}}>click me</button>
{{#linkTo home}}<button class="btn" {{action doHome}}>go back home</button>{{/linkTo}}