2013-02-20 61 views
0

我有一個Web服務,返回類似這樣的東西,其中有一個固定的信封,然後是一個依賴於「body_schema」的架構的json體。我希望能夠使用ember-data來管理這些,使用固定信封的first class字段和body字段的對象。這可能嗎?我似乎無法在文檔中看到任何這樣的內容,但我無法想象我是第一個遇到此問題的人。jer子文檔中的餘燼數據模型

{"messages": 
[ 
    {"id":"5", 
    "from": "someone", 
    "to": "somebody", 
    "body_schema": "atype", 
    "body": { 
    {"url":"http://localhost:3030/blobs/511d63ddd0a6b5e863000001"} 
    } 
    } 
]} 

任何想法?

回答

0

我解決了這個問題 - 您需要做的是將您自己的屬性轉換添加到現有的JSONTransforms集合中。我定義的對象變換像這在我的app.js:

DS.JSONTransforms.object = { 
    deserialize: function(serialized) { 
     return Em.isNone(serialized) ? {} : serialized; 
    }, 
    serialize: function(deserialized) { 
     return Em.isNone(deserialized) ? {} : deserialized; 
    } 
}; 

有了這個地方,我可以定義一個消息模型是這樣的:

App.Message = DS.Model.extend({ 
    timestamp: DS.attr('date'), 
    body: DS.attr('object'), 
    ... 
}); 
+0

你好, @ outside2344我遇到了同樣的問題,並實現了同一種解決方案,但在編輯數據時,燼數據不看我的領域爲髒。這是你遇到的問題嗎?你能解決嗎? – Emma 2014-07-22 05:18:11