在我的Rails应用程序中,我有视频。视频与Youtube相关联,因此有时会无法使用。
当我在Rails中查询我的视频端点时,我有时会传入一个“request_type =”url属性来表示我想要获取链接断开的视频。
为此,在backbone.js中我简单地覆盖了url方法,并使用jQuerys params命令添加url参数。我现在遇到的问题是更新现有项目。它试图使用如下的URL:
PUT / medias?request_type = broken_medias / 2
显然/ 2需要出现在/ medias部分之后的url。如果request_type params保留在URL上并不重要,尽管我更喜欢它,因为我需要处理损坏的媒体的特定更新行为。
有关如何最好地处理此问题的任何想法?破碎媒体的独特路线?检查我是否在集合中执行PUT请求?在执行更新请求之前覆盖url方法?
答案 0 :(得分:0)
为了使用Backbone完全控制后端请求,您需要覆盖实际构建并生成ajax请求的集合或模型 sync 方法。 在这里查看示例: Backbone.js updating of models in a collection
更新:我更多地考虑了Juliens的评论,并记得Collections或models中的url属性也可以是一个可以构建你的url的函数。
var myModel = Backbone.Model.extend({
url: function(){
// build my_url
// based on my specific rules
return my_url;
}
})