Ember RC1 model/setupController Issue
HTML
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="https://raw.github.com/wycats/handlebars.js/1.0.0-rc.3/dist/handlebars.js"></script>
<script src="https://raw.github.com/emberjs/ember.js/release-builds/ember-1.0.0-rc.1.js"></script>
<div id="app">
</div>
<script type="text/x-handlebars" data-template-name="list-view">
I am list:
{{#each item in items}}
<p>{{#linkTo editItem item}}{{item.name}}{{/linkTo}}</p>
{{/each}}
</script>
<script type="text/x-handlebars" data-template-name="edit-view">
I'm Editing {{content.name}}
</script>
JavaScript
window.App = Ember.Application.create({rootElement: '#app'});
App.ItemController = Ember.Controller.extend({
items: [
{id: 3, name: 'Ball'},
{id: 5, name: 'Bat'}
]
});
App.IndexController = Ember.Controller.extend({
needs: ['item'],
items: (function() {
return this.get('controllers.item.items');
}).property('controllers.item.items')
});
App.IndexView = Ember.View.extend({ templateName: 'list-view' });
App.EditItemController = Ember.Controller.extend({
});
App.EditItemView = Ember.View.extend({ templateName: 'edit-view' });
Ember.Route.reopen({
init: function() {
window.App.currentRoute = this;
return this._super(this, arguments);
}
});
App.Router.map(function() {
this.resource('editItem', {path: '/edit-item/:id'});
});
App.EditItemRoute = Ember.Route.extend({
model: function(params) {
alert('Model called!');
if (params.id == null) {
return;
}
var item = null
var items = this.controllerFor('item').get('items')
for (var i in items) {
var itm = items[i];
if (parseInt(itm.id) == parseInt(params.id)) {
item = itm;
break
}
}
return item;
}
});