2011-07-01 77 views
3

保存我已經在CoffeeScript的限定的骨架視圖下面的方法:Backbone.js的帶的CoffeeScript

saveObservation: => 
    self = @ 
    observation = new Observation(ParentUid: _questionUid, Status: "N/a", Text: "Change to element") 
    observation.save { 
      success: -> 
      alert('test') 
      error: -> 
      alert('failed') 
     } 

觀察從Backbone.Model擴展

class Observation extends Backbone.Model 
    url: -> 
    "/AuditActionTracking/" 

的節省到達服務器但既不在保存中定義的成功或錯誤處理程序在ajax調用完成後會被調用。

任何人都可以看到我做錯了什麼?

+0

你忘了提及'觀察'是一個模型,集合還是一些任意的東西 – Raynos

+0

對不起,這是一個模型 – dagda1

回答

6

Backbone.Model.save需要2 parameters,第一個是您要更改的屬性列表,第二個是回調配置。

所以,如果你不改變保存過程中的任何其他屬性,你可以傳遞一個空的對象:

observation.save {}, 
    success: (model, response) -> 
     alert('test') 
    error: (model, response) -> 
     alert('failed') 
+1

謝謝,我以爲我生氣了 – dagda1

4

第一個答案爲我工作,但有輕微的修改。我不得不傳入一個空的散列,而必須傳遞null,否則使用空的散列來設置模型上的所有屬性,替換任何現有屬性並實際刪除它們。

observation.save null, 
    success: (model, response) -> 
    alert('test') 
    error: (model, response) -> 
    alert('failed') 

以上是我從什麼工作,也許api改變,因爲這個以前的答案發布?

相關問題