Skip to content

Instantly share code, notes, and snippets.

@rauhryan
Created July 23, 2013 22:04
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rauhryan/6066573 to your computer and use it in GitHub Desktop.
Save rauhryan/6066573 to your computer and use it in GitHub Desktop.
Model library for ember
var attr = Ember.attr, hasMany = Ember.hasMany;
// Model definitions
App.User = Ember.Model.extend({
id: attr(),
name: attr(),
comments: hasMany("App.Comment", {key: 'comment_ids'})
});
App.User.url = "/users";
App.User.adapter = Ember.RESTAdapter.create();
App.Comment = Ember.Model.extend({
id: attr(),
text: attr()
});
App.Comment.url = "/comments";
App.Comment.adapter = Ember.RESTAdapter.create();
// create example
var newUser = App.User.create({name: "Erik"});
newUser.save(); // POST to /users.json
// hasMany example
var comments = newUser.get('comments');
comments.create({text: "hello!"});
comments.save(); // POST to /comments.json
// find & update example
var existingUser = App.User.find(1); // GET /users/1.json
existingUser.set('name', 'Kris');
existingUser.get('isDirty'); // => true
existingUser.save(); // PUT /users/1.json
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment