首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >EMB适配器将模型名从复数改为单数

EMB适配器将模型名从复数改为单数
EN

Stack Overflow用户
提问于 2017-08-24 21:00:54
回答 1查看 142关注 0票数 0

我为一个名为time-zone的模型提供了以下Ember适配器

代码语言:javascript
复制
import Ember from 'ember';
import DS from 'ember-data';

export default DS.RESTAdapter.extend({
  namespace: 'api/v2',
  pathForType: function(type) {
    // type here is "time-zone"
    return Ember.String.underscore(type);
  }
});

我想要的是我的HTTP请求被发送到/api/v2/time_zones,但是它是以/api/v2/time_zone的形式出现的,这是错误的。

这是我的模型文件:

代码语言:javascript
复制
import DS from 'ember-data';

export default DS.Model.extend({
  name: DS.attr('string')
});

这是我的路由文件的相关部分:

代码语言:javascript
复制
import Ember from 'ember';

export default Ember.Route.extend({
  model(params) {
    return Ember.RSVP.hash({
      timeZones: this.store.findAll('time-zone')
    });
  }
});

将像timeZonetime-zone这样的名称调整到端点URI (如/api/v2/time_zones )对于Ember来说似乎是一个非常常见的用例,所以我很困惑于我正在尝试的东西不起作用。

我能做到这一点并让它发挥作用:

代码语言:javascript
复制
    return Ember.String.pluralize(Ember.String.underscore(type));

但这似乎是一次愚蠢的黑客攻击,再次肯定是一个超级普通的用例。

EN

回答 1

Stack Overflow用户

发布于 2017-08-24 22:25:17

我认为当你使用复数的时候你做的很对。它在文档中说,默认情况下,它将使类型多元化,但是由于您要重写它,所以必须自己将其多元化。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45870808

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档