Ember数据覆盖查找方法

时间:2014-03-04 11:09:37

标签: ember.js ember-data

我需要覆盖ember-data中的find()方法,使其与我的应用程序兼容。它不是我必须做的巨大修改,但我不知道从哪里开始。

到目前为止,当我尝试这样做时:this.store.find('enquiry'); Ember-Data正在尝试从http://localhost/enquiries而不是http://localhost/enquiry获取信息。我的问题是我不需要得到我的复数网址。

我还想过使用jquery方法但是,我宁愿使用Ember-Data。我怎么能这样做?

另一个问题:在此工作之后,Ember-Data是否在应用程序中动态生成模型?因为我的JSON中有很多字段,我不能手动写下来......

我可以这样做:

  App.Store = DS.Store.extend({
    adapter: '-active-model'
  });

  App.Enquiry = DS.Model.extend();

感谢您的帮助!

1 个答案:

答案 0 :(得分:3)

This页面将向您显示如何在您的应用程序中使用自定义适配器。 this页面将向您展示如何覆盖子类中的方法。

昨天我没有在Ember论坛上看到你的回复,但在我看来,你最好还是写自己的适配器。看起来你试图修改REST适配器的工作量比你刚刚创建自己的更多。

但是如果您仍想扩展其余适配器,请按以下方式进行:

App.ApplicationAdapter = DS.RESTAdapter.extend({
    find: () {
        //...
    }
}):

至于你的第二个问题,不,Ember-Data不会自动获取字段。我很确定如果在JSON中包含未在相应模型中声明的字段,则会抛出错误。这是设计的。如果您在开发时不了解您的字段,那么如何在模板或控制器中使用它们?