6

我真的在使用 Ember-data 的 REST 适配器和嵌套资源苦苦挣扎,希望能得到任何帮助……我正在使用 Ember 和 Ember-data 的最新(1.0.4pre)版本(修订版:11)。

我有 2 个简单的模型:

App.User = DS.Model.extend({
  name:     DS.attr('string'),
  email:    DS.attr('string'),
  schemes:  DS.hasMany('App.Scheme')
});

App.Scheme = DS.Model.extend({
  name: DS.attr('string'),
  users: DS.hasMany('App.User')
});

和简单的嵌套路线:

Router.map(function() {
  this.resource("user", { path: "users/:user_id" }, function() {
    this.resource("schemes");
  });
});

我有一个 Rails 3 JSON API,它具有以下端点:

/users/:user_id
/users/:user_id/schemes

当我在我的 ember 应用程序中导航到users/:user_id/schemes时,我想检索所有用户的方案,但是默认情况下 Ember-data requests /schemes,它不是我的 API 中的端点 - 我可以添加它,但我需要按用户来确定方案的范围,我不有 current_user 的概念,因为我想查看任何用户和她的方案。

有没有办法强制 Ember 查看/users/:user_id/schemes或将查询参数附加到 Ember 的默认 ajax 调用,例如:/schemes?user_id=:user_id

或者,有没有办法添加到 ajax 请求标头,而我的 rails API 可以相应地读取和设置/schemes响应?

4

1 回答 1

4

似乎这个功能已经讨论了很多,但还没有实现。此问题包含用于快速解决的示例代码。

您还可以使用:

var userSchemes = App.Scheme.find({ used_id: 'id' });

来查询/schemes?user_id=id

于 2013-03-04T15:17:13.273 回答