willCode2Surf / ember-data-lawnchair

ember-data lawnchair adapter

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ember-data-lawnchair is an adapter for ember-data for lawnchair.

THIS EXAMPLE IS OUTDATED FOR V2 EMBER ROUTER BUT WILL SUPPORT EMBER-DATA v11

The following demonstrates its usage:

var App = Ember.Application.create({
    Router: Ember.Router.extend({
	root: Ember.Route.extend({
	    index: Ember.Route.extend({
		route: '/',
		connectOutlets: function(router) {
		    router.get('applicationController').connectOutlet('content', 'main', App.store.find(App.Item));
		},

		addItem: function(router, event) {
		    App.store.createRecord(App.Item, { name: '(unnamed)' });
		    App.store.commit();
		},

		saveItem: function(router, event) {
		    App.store.commit();
		},

		deleteItem: function(router, event) {
		    var item = event.context;
		    App.store.deleteRecord(item);
		    App.store.commit();
		}		
	    })
	})
    })
});

App.Item = DS.Model.extend({
    name: DS.attr('string')
});

App.store = DS.Store.create({
    revision: 10,
    adapter: DS.LawnchairAdapter.create()
});

App.ApplicationController = Ember.Controller.extend();
App.ApplicationView = Ember.View.extend({
    templateName: 'application'
});

App.MainController = Ember.Controller.extend();
App.MainView = Ember.View.extend({
    templateName: 'main'
});
<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8"/>
    
    <script type="text/x-handlebars" data-template-name="application">
      {{outlet content}}
    </script>

    <script type="text/x-handlebars" data-template-name="main">
      <a href="#" {{action addItem }}>Add Item</a>
      <ul>
	{{#each content}}
	<li>{{view Ember.TextField valueBinding="name"}}
	{{#if isDirty}}
	<a href="#" {{action saveItem this}}>Save</a>
	{{/if}}
	<a href="#" {{action deleteItem this}}>Delete</a>
	</li>
	{{/each}}
      </ul>
    </script>

    <script type="text/javascript" src="lib/vendor/jquery-1.8.3.min.js"></script>
    <script type="text/javascript" src="lib/vendor/handlebars-1.0.rc.1.js"></script>
    <script type="text/javascript" src="lib/vendor/ember.js"></script>
    <script type="text/javascript" src="lib/vendor/ember-data.js"></script>
    <script type="text/javascript" src="lib/vendor/lawnchair.js"></script>
    <script type="text/javascript" src="lib/vendor/lawnchair-adapter-indexed-db-0.6.1.js"></script>
    <script type="text/javascript" src="lib/vendor/uuid.js"></script>
    <script type="text/javascript" src="lib/ember-data-lawnchair.js"></script>
    <script type="text/javascript" src="demo.js"></script>
  </head>
  <body>

  </body>
</html>

About

ember-data lawnchair adapter

License:MIT License


Languages

Language:JavaScript 100.0%