Ember-Data template
HTML
<script src="http://cloud.github.com/downloads/wycats/handlebars.js/handlebars-1.0.0.beta.6.js"></script>
<script src="https://github.com/downloads/emberjs/ember.js/ember-latest.js"></script>
<script src="http://cloud.github.com/downloads/emberjs/data/ember-data-latest.js"></script>
<script type="text/x-handlebars">
<h2>Model with CamelCase attributes</h2>
CamelItems.length: {{App.camelItemsController.length}}
<ul>
{{#each App.camelItemsController}}
<li>{{CamelName}}</li>
{{/each}}
</ul>
<hr/>
<h2>Model with snake_case attributes</h2>
snake_items.length: {{App.snakeItemsController.length}}
<ul>
{{#each App.snakeItemsController}}
<li>{{snake_name}}</li>
{{/each}}
</ul>
</script>
CSS
h2 {
font-weight: bold;
margin-bottom: 10px;
}
JavaScript
window.App = Ember.Application.create({
});
App.store = DS.Store.create({
adapter: 'DS.RESTAdapter',
revision: 4
});
App.CamelItem = DS.Model.extend({
camelName: DS.attr('string')
});
App.store.load(App.CamelItem, {id: 1, camelName: 'one'});
App.store.load(App.CamelItem, {id: 2, camelName: 'two'});
App.camelItemsController = Ember.ArrayProxy.create({
content: App.store.findAll(App.CamelItem)
});
App.SnakeItem = DS.Model.extend({
snake_name: DS.attr('string')
});
App.store.load(App.SnakeItem, {id: 1, snake_name: 'one'});
App.store.load(App.SnakeItem, {id: 2, snake_name: 'two'});
App.snakeItemsController = Ember.ArrayProxy.create({
content: App.store.findAll(App.SnakeItem)
});