我的大多数模型都遵循Ember Data期望的标准命名约定。我用以下内容抵消了所有请求:
App.ApplicationAdapter = DS.RESTAdapter.extend({
namespace: 'api'
});
但其他相当标准。当我有一个类似于测量单位的API结构时会出现异常。在这种情况下,我有三个相关的端点:uoms
,uom-systems
和uom-contexts
。
引用它们的方式是(使用GET作为示例目的,同样适用于其他CRUD操作):
如何在这些情况下告诉Ember数据在正确的位置?
答案 0 :(得分:0)
好了,用小挖周围,我想出了一个答案,以我自己的问题。好消息......这很容易做到。所有你需要做的就是创建一个自定义的适配器,它做了两两件事:
api/uoms
)uomSystems
需要为systems
)以下是代码:
App.UomSystemAdapter = DS.RESTAdapter.extend({
namespace: 'api/uoms',
pathForType: function(type) {
// gets rid of leading "uom" and pluralizes like normal
return Ember.String.pluralize(type).substr(3);
}
});
此实例可与所需UomContext模型中没有代码改变被重复。不知道是否有一种方法可以做两个单定制适配器;这似乎更优雅,但这种解决方案很简单,适用于一次性的场景我想解决的问题。