2015-10-06 20 views
1

我的Ember + Rails應用程序出現問題。Ember:保存模型時在JSON中下劃線的名稱

我有一個名爲GuestGroup的模型。我使用ActiveModelAdapter連接到我的Rails後端。當我的模型保存到我的後端,灰燼發送以下JSON:

{guestGroup: {title: "test", wedding: "1"}} 

正如你所看到的,型號名稱是駝峯。但我希望它是snake_case:

{guest_group: {title: "test", wedding: "1"}} 

我有2個問題:

  1. 爲什麼ActiveModelAdapter不轉換型號,以snake_case?它 讀取從服務器強調JSON沒有問題。
  2. 如何發送我的模型名稱下劃線?
+1

的ActiveModelAdapter絕對應該這樣做,你...你能提供一些更多的代碼,至於你是如何發送此JSON?你有適配器或串行器的任何自定義設置?什麼版本的Ember?在最新版本的Ember中,ActiveModelAdapter是它自己的插件,並且不再默認包含在內。 – bmeyers

+0

@bmeyers你是對的,問題是我有一個自定義適配器爲該模型(我需要覆蓋Ember POST JSON創建新記錄的URL)。如果我刪除適配器一切正常。 Ember 2.0,Ember-Data 2.0。現在我嘗試使用格式。 –

回答

0

我有我的模型的自定義適配器。我的自定義適配器正在擴展RESTAdapter - 這是錯誤的。現在我延長ActiveModelAdapter和正常工作:

import UrlTemplates from "ember-data-url-templates"; 
 
import ActiveModelAdapter from 'active-model-adapter'; 
 

 
export default ActiveModelAdapter.extend(UrlTemplates, { 
 
    urlTemplate: '{+host}/weddings/{weddingId}/guest_groups{/id}', 
 
    findUrlTemplate: '{+host}/guest_groups/{id}', 
 

 
    urlSegments: { 
 
    weddingId(type, id, snapshot, query) { 
 
     return snapshot.belongsTo('wedding', { id: true }); 
 
    } 
 
    } 
 
});

相關問題