1

我将使用 Backbone.js 创建一个 Web 应用程序。

我有一个 Web 服务,它将通知我需要我的模型具有哪些字段,因此考虑到这一点,我无法创建静态模型,以便为我的应用程序创建一个动态模型,该模型会在我的 Web 服务 JSON 执行时发生更改,我该怎么做呢?

我需要使用 model.urlRoot() 吗?

4

2 回答 2

0

如果要为模型设置自定义 url,则应使用urlRoot 。欲了解更多信息,请阅读urlRoot 主干文档

于 2013-07-16T11:30:41.290 回答
0

你会调用相同的 URL,将你想要的字段作为参数吗?如果您这样做,那么您不一定需要更改 urlRoot 或其他任何内容。

如果你这样做:

var MyModel = Backbone.Model.extend({});

它已经是动态的了。它将具有您返回的 JSON 的所有属性,并且它是否每次都更改并不重要。

但是,如果您愿意,您可以更改 urlRoot。

var MyModel = Backbone.Model.extend({urlRoot : '/books'});

您甚至可以将其定义为一个函数,该函数将根据您的某些条件返回不同的 URL,例如:

var MyModel = Backbone.Model.extend({
    urlRoot : function() {
        return '/books/' + this.get("anyField");
    }
});
于 2013-07-16T16:20:21.867 回答