У меня есть простое приложение с моделью, маршрутом и контроллером. Я не могу получить доступ к данным из модели в своем контроллере. Я использую уголек-кли так что имеют следующую структуру:Модель доступа от контроллера в ember.js
/app/router.js
var Router = Ember.Router.extend({
location: config.locationType
});
Router.map(function() {
this.route('logs',{path: '/'});
});
export default Router;
/app/routes/logs.js
export default Ember.Route.extend({
controllerName: 'logs',
model: function() {
return this.store.find('logs');
}
});
/приложение/модели/logs.js
export default DS.Model.extend({
ip: DS.attr('string'),
timestamp: DS.attr('number'),
visited_resource: DS.attr('string'),
pretty_string: DS.attr('string')
});
/app/controllers/logs.js
export default Ember.Controller.extend({
url: function() {
var model = this.get('model');
var basePath = "http://example.com";
var path = model.visited_resource;
return basePath+path
}.property('visited_resource')
});
Моя проблема заключается в том, что model.visited_resources
или this.get('model.visited_resources')
или this.get('model.[any param]')
не определено.
Если я зарегистрирую весь объект модели и осмотрю его, все мои данные есть! ! http://i.stack.imgur.com/nkvyT.png
Просто контроллер не может получить к нему доступ. Что я делаю не так?
Ваша модель представляет собой массив, таким образом, ваши журналы контроллер должен быть расширен от 'ArrayController', и каждая вещь встанет на свои места. – guleria