2011-03-27 42 views
0

在我的Rails應用程序中,我有視頻。視頻鏈接到Youtube,所以有時他們變得不可用。Backbone.Js終端/ Rails集成和URL參數

當我在Rails中查詢我的視頻終端時,我有時會傳入「request_type =」url屬性來表示我想獲取已斷開鏈接的視頻。

爲此,在backbone.js中,我簡單地覆蓋了url方法,並使用jQuerys params命令添加url參數。我現在的問題是更新現有的項目。它試圖用一個URL類似如下:?

PUT /媒體request_type = broken_medias/2

顯然/ 2的需求/媒體部分之後出現的URL。如果request_type參數保留在URL上並不重要,但我更喜歡它,因爲我需要處理損壞的媒體的特定更新行爲。

有關如何最好地處理這個問題的想法?獨特的破媒介路線?檢查我是否正在收集PUT請求?在執行更新請求之前覆蓋url方法?

回答

0

爲了完全控制Backbone對主幹的請求,您需要覆蓋您的集合或模型sync實際構建並生成ajax請求的方法。 在這裏看到一個例子: Backbone.js updating of models in a collection

更新:我給它多一些想在Juliens評論,想起在數據庫或模型url屬性也可能是在那裏你可以建立自己的URL的功能。

var myModel = Backbone.Model.extend({ 
    url: function(){ 
     // build my_url 
     // based on my specific rules 
     return my_url; 
    } 
}) 
+0

在這種情況下重新定義URL就足夠了。 – Julien 2011-03-28 00:28:42

+0

感謝Julien,這實際上是一個更簡單的解決方案,所以我更新了我的答案 – 2011-03-28 19:07:10