2014-04-02 88 views
3

首先,我知道這應該是非常簡單的,許多文檔似乎回答我的問題。事情是,我已經嘗試了一切,但我無法完成它的工作。如何配置Ember數據以使用Rails後端?

所以我想開始我的第一個Ember應用程序。

我創建了一個新的Rails應用程序,添加燼護欄寶石,跑燼:引導和燼:安裝--head,這是我的設置看起來像現在:

DEBUG: ------------------------------- ember.js?body=1:3883 
DEBUG: Ember  : 1.7.0-beta.1+canary.271940eb ember.js?body=1:3883 
DEBUG: Ember Data : 1.0.0-beta.7+canary.20adb1d5 ember.js?body=1:3883 
DEBUG: Handlebars : 1.3.0 ember.js?body=1:3883 
DEBUG: jQuery  : 1.11.0 ember.js?body=1:3883 
DEBUG: ------------------------------- 

現在的我試圖從我的Rails API中簡單地獲取一些記錄並顯示它們。

我用activeModel序列化程序配置了我的後端,並且檢查了它的正確結果集。

我store.js.coffee我(在這裏我敢肯定這個問題)是:

App.ApplicationAdapter = DS.ActiveModelAdapter.extend()

我總是收到此錯誤:

Error while loading route: TypeError: Object function() { 
     var Class = makeCtor(), proto; 
     Class.ClassMixin = Mixin.create(this.ClassMixin); 
     Class.PrototypeMixin = Mixin.create(this.PrototypeMixin); 

     Class.ClassMixin.ownerConstructor = Class; 
     Cl...<omitted>... } has no method 'create' 
    at instantiate (http://app.dev/assets/ember.js?body=1:46251:26) 
    at lookup (http://app.dev/assets/ember.js?body=1:46117:19) 
    at Object.Container.lookup (http://app.dev/assets/ember.js?body=1:45792:16) 
    at EmberObject.extend.controllerFor (http://app.dev/assets/ember.js?body=1:38264:32) 
    at EmberObject.extend.setup (http://app.dev/assets/ember.js?body=1:37790:31) 
    at handlerEnteredOrUpdated (http://app.dev/assets/ember.js?body=1:40938:36) 
    at http://app.dev/assets/ember.js?body=1:40907:18 
    at forEach (http://app.dev/assets/ember.js?body=1:41956:54) 
    at setupContexts (http://app.dev/assets/ember.js?body=1:40906:9) 
    at finalizeTransition (http://app.dev/assets/ember.js?body=1:41076:9) 

有什麼想法?

謝謝

回答

1

我最近在我的灰燼應用程序連接到後端的軌道時,就遇到了這個確切的同樣的問題。我收到這個錯誤的原因是因爲發送給我的JSON數據不是Ember預期的。確保您獲得的數據集可以轉換爲您在ember中定義的模型。

例如: 如果數據是在外觀還是未來是這樣的:

{ 
    contacts: [ 
    {name:"contact1".... 
    }, ... 
    ], 
    buildings: [ 
    {... 
    }, ... 
    ] 
} 

然後燼會預期將聯繫人的模型和建築模型。另外,確保如果你在一個沒有任何屬性的模型中定義一個模型,它會被正確關閉。我也遇到過這種情況。

例如:

App.Contact = DS.Model.extend 

必須

App.Contact = DS.Model.extend() 

如果餘燼模型沒有屬性。

相關問題