2014-01-25 45 views
0

我有一個骨幹應用程序,後端是帶有REST API的Node/Express.js。該應用程序允許用戶創建新條目,並且僅用於客戶端驗證來清理和更新某些字段。但是,可以通過REST API(而不是客戶端)創建條目,並且我想要一個一致且易於維護的驗證過程,我將驗證移至服務器。正是在這一點上,我意識到我的骨幹實施沒有按照我的理解來工作。Backbone集合未使用REST響應中的模型更新?

以此代碼來添加新模型。

this.collection.add(time); 
time.save(); 

我的理解(因爲它可能是錯誤的)是集合將更新,通過模型URL屬性與REST API同步。因此,任何服務器端更新都將與骨幹模型同步,因爲REST API會返回更新模型(帶有驗證更新)。除非我做錯了什麼,它不會這樣工作嗎?

我已經更新了我的代碼(上圖),所以它看起來像這樣,等待ajax .done響應,然後將更新模型添加到集合中。

time.save() 
    .done(function (model) { 
    self.collection.add(model); 
    }); 

它的工作原理,但是這是做的最好的方法是什麼?

回答

1

有一個create方法在集合中添加新模型並將其保存到服務器。

time.create(model); 
+0

是的,工作,謝謝!不知道我是如何錯過了那個,現在明顯地顯而易見。 –

相關問題