Ember数据api端点与映射路径复数

时间:2016-10-25 00:32:18

标签: rest ember.js ember-data

考虑在http://localhost:4200/organizer/{organizer-id}处设置一个动态路由页面,该页面从RESTful JSONAPI适配器获取数据。

organizer.js:

export default Ember.Route.extend({
  model: function(params) {
    return this.get('store').findRecord('organizer', params.organizer_id);
  }
});

从REST适配器获取数据时,Ember数据将organizer复数为organizers。从文档中看,这似乎是预期的行为,即/ organizers / {organizer-id}。

然而,从他们https://guides.emberjs.com/v2.8.0/routing/defining-your-routes/的指南中,他们似乎暗示了这一点:

Router.map(function() {
  this.route('posts');
  this.route('post', { path: '/post/:post_id' });
});

这不是一个矛盾吗?当上面的api端点复数时,这些路由如何是单数的?

1 个答案:

答案 0 :(得分:2)

您正在混淆路径路径和API端点。对于API端点,不要将名词模型(组织者)重命名为使用适配器:http://emberjs.com/api/data/classes/DS.JSONAPIAdapter.html#method_pathForType

//app/adapters/organizer
import ApplicationAdapter from './application';
export default ApplicationAdapter.extend({
  pathForType: function(){
    return "organizer";
  }
});

关于使用路由器映射的示例,这些是您可以通过url栏访问的ember应用程序的路径,而不是基础API调用。