2013-01-11 89 views
1

我正在創建一個使用來自Mongoose的數據的API。前端(Backbone)期望id,而不是_id。我似乎無法找到這樣一個簡單問題的簡單解決方案。有沒有人知道一種方法來重命名_id到ID。我希望這是跨每個模式的默認行爲。貓鼬重命名_id到id

回答

1

你認爲在前端(骨幹)model.idAttribute設置爲_id的。這將允許Backbone'將該密鑰透明地映射到id'。

http://backbonejs.org/#Model-idAttribute

+0

我正在考慮這樣做,但有人提到這是不好的做法(我不這麼認爲)。你有什麼想法 - 是否應該在前端完成,還是應該儘量關注API端,這樣所有的客戶端都不需要進行修改? –

+0

這正是我在回答時想知道的。我不認爲這是一個不好的做法。我們在我們的骨幹模型的每個人中都使用它來映射到我們的後端,這需要每個模型有不同的ID。 關於其他客戶端,它確實取決於您期望使用API​​的客戶端/框架,但他們應該能夠很容易地適應後端,在我看來。 – Arnaud

1

您可以設置一個架構方法getItem返回所需的字段和id = _id,如果你真的需要:)

+1

任何機會,你可以提供的,我怎麼能做到這一點與我的模式的樣本? https://gist.github.com/4513181 –