主干URL的根路径(Backbone.js存储在子URI中)
我将Rails和Backbone.js应用程序部署到子URI。用子URI预结束所有请求的最佳方法是什么 示例:应用程序部署到主干URL的根路径(Backbone.js存储在子URI中),url,backbone.js,deployment,Url,Backbone.js,Deployment,我将Rails和Backbone.js应用程序部署到子URI。用子URI预结束所有请求的最佳方法是什么 示例:应用程序部署到www.Example.com/app。我有一个资源users,我想调用www.example.com/app/users,而不是默认的www.example.com/users 我正在服务器端设置一个ROOT\u URI变量,我将在主干应用程序中使用它。最简单的方法是将其添加到模型和集合中的所有URL中,但这既繁琐又容易出错。我该怎么办?覆盖主干网。同步 您可以在获取调用
www.Example.com/app
。我有一个资源users
,我想调用www.example.com/app/users
,而不是默认的www.example.com/users
我正在服务器端设置一个
ROOT\u URI
变量,我将在主干应用程序中使用它。最简单的方法是将其添加到模型和集合中的所有URL中,但这既繁琐又容易出错。我该怎么办?覆盖主干网。同步 您可以在获取调用时传递URL
示例
model.fetch({
url: yourServiceURL,
success: function (response, xhr)
{
//console.log("Successfully Fetched...");
},
error: function()
{
//console.log("Error Occurred...");
}
});
这样,您就不必在模型和集合中定义url
编辑
我从你的评论中了解到了什么。你可以这样做
yourModel = Backbone.Model.extend({
url:function() {
return yourGlobalVarForRootURI+"/staticLogicalPathForEachModel";
},
parse: function (response) {
return response;
}
});
通过这种方式,您可以在所有模型/集合中指定
yourlobalvarforrooturi
变量,并且您可以更改此全局变量,以便在所有模型/集合中更改它。我希望它能解决您的问题谢谢,但这样我就更关心根URL了:我必须在每次获取或保存时记住它,而不是在每个模型/集合中覆盖它一次。我想做的是为每个应用程序设置一次根路径,这样所有模型和集合都会自动使用它。我已经编辑了我的答案。请检查编辑部分,如果我仍然不明白你的观点,请告诉我:)最后,我做了一些类似于你建议的事情。我将应用程序suburi设置为全局变量,并使用helper函数在主干中预先设置所有URL。