Ember Data Example

The latest build of Ember.

by Jeremy Gillick

HTML

<script src="http://builds.emberjs.com/handlebars-1.0.0.js"></script>
<script src="http://builds.emberjs.com/ember-latest.js"></script>
<script src="http://builds.emberjs.com/tags/v1.0.0-beta.4/ember-data.prod.js"></script>
<script type="text/x-handlebars" data-template-name="index">
    <button {{action "save"}}>Save</button>
</script>

JavaScript

App = Ember.Application.create({});


App.Child = DS.Model.extend({
    name: DS.attr('string'),
    age: DS.attr('number'),
    toys: DS.hasMany('toy', {async:true, embedded:'always'}),
});
App.Toy = DS.Model.extend({
    name: DS.attr('string'),
    child: DS.belongsTo('child')
});

App.IndexController = Em.ObjectController.extend({
    actions: {
        save: function(){
            var store = this.get('store'),
                child, toy;
            child = store.createRecord('child', {
                name: 'Herbert'
            });
            toy = store.createRecord('toy', {
                name: 'Kazoo'
            });
            
            child.set('toys', [toy]);
            child.save();
        }
    }    
});