Question

Can a local storage adapter and a data storage adapter be used simultaneously? Here's some example code.

VpcYeoman.ApplicationAdapter = DS.LSAdapter.extend({
      namespace: 'viewpoint-emberjs'
    });

vs.

VpcYeoman.Store = DS.Store.extend({
    revision: 12,
    adapter: DS.FixtureAdapter.extend({
        queryFixtures: function(fixtures, query, type) {            
            return fixtures.filter(function(item) {
                for(prop in query) {
                    if( item[prop] != query[prop]) {
                        return false;
                    }
                }
                return true;
            });
        }
    })

});

Fight! Or coexist??

Was it helpful?

Solution

Yes, absolutely. You can create per-type adapters, so you can have:

App.PostAdapter = DS.FixtureAdapter.extend({
    queryFixtures: function(fixtures, query, type) {            
        return fixtures.filter(function(item) {
            for(prop in query) {
                if( item[prop] != query[prop]) {
                    return false;
                }
            }
            return true;
        });
    }
});
App.Post.FIXTURES = [];

Your other non-fixture types can omit an Adapter and instead use the ApplicationAdapter, which could be an instance of DS.RESTAdapter or LocalStorageAdapter. Optionally, you could define that adapter on the DS.Store instance.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top