Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何访问API中的嵌套资源_Ruby On Rails_Ember.js_Ember Data - Fatal编程技术网

Ruby on rails 如何访问API中的嵌套资源

Ruby on rails 如何访问API中的嵌套资源,ruby-on-rails,ember.js,ember-data,Ruby On Rails,Ember.js,Ember Data,我有一个使用Rails API的Ember应用程序。我有一个团队表和一个裁判表,两者都链接到另一个名为CreditTeamStats的表。我正在尝试获取一支球队的所有裁判员队伍统计数据,并包括裁判员资源,以便获得裁判员的姓名。简而言之,我需要我的余烬应用程序调用/teams/:team\u id/referenceteamstats?include=reference 最初,我让我的应用程序通过以下操作获取路线中的裁判员团队统计信息: model() { return this.modelF

我有一个使用Rails API的Ember应用程序。我有一个团队表和一个裁判表,两者都链接到另一个名为CreditTeamStats的表。我正在尝试获取一支球队的所有裁判员队伍统计数据,并包括裁判员资源,以便获得裁判员的姓名。简而言之,我需要我的余烬应用程序调用
/teams/:team\u id/referenceteamstats?include=reference
最初,我让我的应用程序通过以下操作获取路线中的裁判员团队统计信息:

model() {
  return this.modelFor('teams/show').get('refereeTeamStats');
}

这将调用
/teams/:team_id/referediteamstats
,但不包括裁判资源。通过在嵌套资源(裁判员TeamStats)上包含资源(裁判员)来获取裁判员TeamStats的最佳方法是什么?

您的
裁判员TeamStats
序列化程序可以实现
DS.EmbeddedRecordsMixin
,并定义

attrs: {
  referee: { embedded: 'always' }
}

因此,如果您的API在
裁判员团队统计数据
有效负载中返回
裁判员
键,则ember会将其反序列化到正确的对象。

我最终以不同的方式进行了此操作。因为我使用了gem,所以我可以改为执行
/referenceTeamstats?filter[team_id]=:team_id&include=reference
。为此,我做了以下工作:

model() {
  const team = this.modelFor('teams/show');
  return this.store.query('refereeTeamStat', {filter: {team_id: team.get('id')}, include: 'referee'});
}

您传递了哪些资源来响应该方法?