我正在尝试对不同类型使用不同的适配器。RESTAdapter 和 FixtureAdapter。通常,我们可以为特定类型注册不同的适配器,例如:
DS.Store.registerAdapter('App.Foo', DS.FixtureAdapter.extend());
App.store = DS.Store.create({
revision: 11,
//adapter: 'DS.FixtureAdapter'
adapter: DS.RESTAdapter.create();
})
});
但是,尽管 ember-data 提供的测试建议使用完全相同的设置来针对不同类型使用不同的适配器,但这似乎不起作用。
test("Adapters can be registered on a per-type basis", function() {
expect(2);
var Store = DS.Store.extend(),
Post = DS.Model.extend(),
Comment = DS.Model.extend();
Store.registerAdapter(Post, DS.Adapter.extend({
find: function(store, type, id) {
strictEqual(type, Post, "Post adapter was used to find Post record");
}
}));
var store = Store.create({
adapter: DS.Adapter.extend({
find: function(store, type, id) {
strictEqual(type, Comment, "default adapter is used to find Comment");
}
})
});