2012-03-27 50 views
21

Backbone.js我可以任命其中模型獲取它的數據:Backbone.js:帶有http查詢字符串的urlRoot?

var Book = Backbone.Model.extend({urlRoot : '/books'}); 
var mybook = new Book({id: "1"}); 
mybook.fetch(); //it will access '/books/1' 

但如果我要追加在URL後查詢字符串?例如圖書數據爲/books/1&details=true。我可以在模型中指定這個嗎?

回答

22

您將不得不爲模型使用自定義url函數。

Book.url = function() { 
    return this.urlRoot + '/' + this.id + '?details=true'; 
}; 
45

您還可以使用該方法的選擇取

mybook.fetch({data:{details: true}}); 
+1

雖然接受評論的作品,這似乎是「主幹道路」 – Tom 2013-12-04 09:37:51

+0

我希望有一種方法來定義它在模型/收集級別。這樣你每次調用fetch都必須傳遞'data',如果你只需要在模型上設置'data'就好了。 – roberkules 2015-10-21 16:56:28