2012-03-27 14 views
2

在過去幾天的閱讀中,我發現至少有三種不同的擴展爲Ember提供數據存儲支持:ember-data,sproutcore-datastore,ember-ezdata,我想我可能會錯過一個。我應該如何評估Ember的不同數據存儲組件?

這個範圍的選擇產生了幾個問題。

顯然燼數據是「官方」的擴展,但它也相當沉重與資格圍欄(「這是不能用於生產」)的核心團隊。

  • 我應該如何比較和評估這些選項?
  • 在SproutCore 1.x系列中,開發通常是使用燈具完成的,而數據源則在稍後連線。這些選項中的任何一種都可以支持這種工作流程?我能否以這種方式加載一些生產數據(可能會隨發佈版本而改變,但不能由用戶編輯)以及來自後端數據源的其他數據?

ETA:這是related question

回答

3

就個人而言,我很期待從灰燼數據的大事情,但它似乎有一點點的路要走是「投入生產」。

當我開始使用灰燼,灰​​燼數據項目纔剛剛開始,所以我決定創建自己的一個簡單的持久層。我結束了​​,這是jQuery.ajax()上的一個非常薄的層。您可以在this Rails example中看到它正在使用中。順便說一句,您可以直接將JSON數據加載到餘燼而不掛入後端。

我的印象是SproutCore的的數據存儲不再保留下。我從來沒有嘗試過ember-ezdata。

另一個值得選擇退房是ember-resource

我希望這是足以讓你開始。

+0

謝謝,丹,這是有幫助的,但我仍然試圖找出如何正確評估這些不同的選項。 – pjmorse 2012-03-28 17:56:52

+0

您可以將ember-data視爲數據管理器。它充當您的數據及其所有關聯的客戶端存儲。有一個單一的規範記錄對應於服務器上的每條記錄,您可以通過調用App.store.find(App.Person,1);來查找該記錄。另一方面,像ember-rest這樣的庫是非託管的,並且簡單地提供了將數據移入/移出REST API到WebSphere內存對象和數組控制器的通道。我對燼資源方面沒有太多經驗,但它似乎是這些方法之間的中間地帶。 – 2012-03-28 19:38:21

相關問題