3

首先,我很抱歉,因为我不确定问题标题是否准确地描述了我正在尝试做的事情。我喜欢/讨厌主干 REST api 结构,但我正在尝试添加一点并支持模型之间关系的“图表”。

所以最简单的终点是这样的:

/machines/:id

或者

/projects

但我想更进一步,展示关系的“图表”:

/machines/:machine_id/projects

或者

/machines/:machine_id/projects/:project_id

我正在尝试考虑采取的最佳方法,并想知道是否有人愿意在这方面分享任何经验。就目前而言,我已经为machinesprojects非关系端点工作定义了模型。我想我的下一步是创建一个虚构的复合模型MachinesProjects- 但不确定我将如何破解模型的 url 连接以响应表示 id 的不同属性。此外,我希望有更好的东西,因为我真的不想为模型类型之间的图中的每个弧明确定义一个模型。

4

1 回答 1

4

像下面这样的东西怎么样?

var Machine = Backbone.Model.extend({
  urlRoot:"/machines"
});

var Project = Backbone.Model.extend({
  urlRoot:"/projects"
});

var MachineProject = Project.extend({
  url: function() {
    return this.machine.url() + Project.prototype.url.call(this);
  },
  initialize: function(options) {
    this.machine = options.machine;
  }
});
于 2013-02-20T19:40:45.900 回答