Я пытаюсь обновить Ember-Brunch (исходный репозиторий: https://github.com/icholy/ember-brunch) до новейших фреймворков EmberJS и EmberJS-Data. Текущая проблема, с которой я столкнулся, заключается в том, что я пытаюсь преобразовать исходную модель Боба в DS.Model
, используя DS.FixtureAdapter
в DS.Store
. Но что бы я ни пытался, я сталкиваюсь с проблемами отображения данных. Вот пара попыток:
С маршрутом:
App.BobRoute = Ember.Route.extend({
model: function() {
return App.Bob.find();
}
});
Я получаю следующую ошибку:
Uncaught TypeError: невозможно вызвать метод hasOwnProperty со значением null
И если я перейду на этот маршрут:
App.BobRoute = Ember.Route.extend({
setupController: function() {
App.BobController.set('content', App.Bob.find());
}
});
Я получаю следующие ошибки:
Uncaught TypeError: объект App.BobController не имеет метода 'set' app.js: 184 Uncaught TypeError: невозможно вызвать метод hasOwnProperty со значением null
Любые идеи?
Вы можете увидеть мою текущую работу https://github.com/seankeating/ember-brunch и мою попытайтесь сделать это в ветке DS.Model-Implementation-For-Using-Local-DSStore.
Магазин:
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}}