Ember数据适配器

时间:2013-09-26 12:19:27

标签: javascript ember.js rhomobile

我正在尝试编写一个Ember-Data适配器,以便为我的ember应用程序使用Rhom JavaScript ORM。但我不知道'find',createRecord,findAll等方法应该返回。

我可以遵循任何参考。我真的不明白RESTAdapter中会发生什么。我看到有一个Ajax调用。

我打算使用1.0版本的Ember Data,所以我在这里引用了Transition Readme文件https://github.com/emberjs/data/blob/master/TRANSITION.md,它在一个地方说:

App.MyAdapter = DS.Adapter.extend({
  find: function(store, type, id) {
    return $.getJSON("/" + this.pluralize(type) + "/" + id);
  }
});

这是否意味着我可以归还我想要的任何东西?像JSON还是什么?

我应该在方法的最后使用Ember.RSVP.resolve(),例如https://github.com/rpflorence/ember-localstorage-adapter/blob/master/localstorage_adapter.js

1 个答案:

答案 0 :(得分:1)

理想情况下,“找到”会返回一个承诺,就像你在那里看到的基本适配器示例一样:

App.MyAdapter = DS.Adapter.extend({
  find: function(store, type, id) {
    return $.getJSON("/" + this.pluralize(type) + "/" + id);
  }
});

'getJSON'返回一个promise,Ember-data知道如何处理它。

findQuery类似,但promise的结果应该是数组。