2014-02-27 48 views
0

我對Ember很新,我想盡可能使用Ember-Data,但是我從其他服務器獲取數據。Ember-data在不同的服務器上調用ajax數據

到目前爲止,除非是用戶登錄信息,否則我沒有使用任何東西的ember-data ......我想知道從服務器獲取信息並將其保存在Ember-Data中是否聰明直接使用它。而在應用

Server數據==> Ember公司-數據==>顯示信息時,我想修改的一些信息這正好那樣:

信息更新==>灰燼,數據= =>服務器

這可能是一個很好的方式來使用一個Ajax調用的燼數據?或者還有其他合適的方法可以做到嗎?

我必須說,對於每次調用,我都收回了大量數據,並且我不知道是否應該在模型中創建每個字段,或者如果ember-data自己做這些。

感謝您的幫助。

[編輯]我讀你的答案後,我試圖弄清楚如何做到這一點,但它很難..

例如,我要送一個GET請求到我的服務器這樣的:

store.find('enquiries');這應該會返回我在我的服務器上的所有查詢。

但商店如何爲它構建?

我應該在store.js中做到這一點嗎?

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

App.Enquiries = DS.Model.extend({ 

}); 

在我的模型,我把這個:

DS.ActiveModelAdapter.reopen({ 
    host: 'http://localhost/' 
}); 

我試圖讀取文檔,但沒有對此過多解釋:/

+0

看看Ember中的模型指南,http://emberjs.com/guides/models/。它應該能夠回答你的問題。 – atsjj

回答

1

選項1: 您可以加載ActiveModel使用

DS.ActiveModelAdapter.reopen({ 
     host: 'http://api.your-api/v1' 
    }); 

,並在您店內

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

選項2: 休息適配器

DS.RESTAdapter.reopen({ 
    host: 'http://api.your-api/v1' 
}); 

就是這樣,現在所有的請求都將被重定向到新的 「主機」

參考http://emberjs.com/guides/models/the-rest-adapter/

+0

對於選項1,這將動態生成商店模型?就像我從我的服務器收到這個一樣{name:「toto」,pass:「tata」}不需要在我的模型中創建它們。因爲我需要爲訪問的每一個頁面做幾乎所有的Ajax調用,這是否可行?就像我必須發送一些GET /查詢或/會議等 – SuperMarco

+0

我不確定如果你不需要一個模型,在大多數情況下,如果需要的話,ember將創建一個默認對象。你應該試試看。 – edwinallenz

+0

好吧,現在當ember-data發出請求時,它會在我的位置請求的末尾添加's'?有可能改變這種情況嗎? – SuperMarco

相關問題