2013-05-31 19 views
1

我打算使用不帶ember-data的emberjs,使用Ember.Object。我在後端使用導軌。 json api rails給出的是使用下劃線,我想把它改成燼類中的駱駝殼。如何有效地做到這一點?謝謝!不使用ember-data時的駱駝情況json

+0

有無你看到了這個:https://github.com/eviltrout/emberreddit.git和http://eviltrout.com/2013/03/23/ember-without-data.html – ianpetzer

+0

是的,我已經看過那個博客。但似乎他沒有處理駱駝案件。 – xnjiang

回答

2

我認爲你可以有兩種方法來做到這一點。第一種可能是修改由AMS提供的JSON,使用key修改

If you would like the key in the outputted JSON to be different from its name in  ActiveRecord, you can use the :key option to customize it: 

class PostSerializer < ActiveModel::Serializer 
    attributes :id, :body 

    # look up :my_attr on the model, but use +myAttr+ in the JSON 
    attribute :my_attr, :key => :myAttr 
    has_many :comments 
end 

,或者編寫自己提取的lib依靠內置Ember.String的fonction的camelize,看到http://emberjs.com/api/classes/String.html#method_camelize

+0

感謝您的回答! – xnjiang

+0

AMS方式會影響POST或PUT方法嗎?那就是:如果I $ .post到rails server with camelCase的ember對象,那麼rails會收到de_camel_cased的json? – xnjiang

+0

@xnjiang不,你必須在你的$ post中這樣做。我想你應該看看燼數據串行器是如何做到這一點的。請參閱https://github.com/emberjs/data/blob/master/packages/ember-data/lib/serializers/rest_serializer.js#L18以及整體序列化如何完成。 –