JSONAPI序列化程序未将下划线大小写返回到 API
JSONAPISerializer not returning underscore case to API
我正在尝试通过返回
来检索单个记录
singleGroup: this.store.findRecord('individual_group', group_id)
然后我在控制台中收到此错误:
GET http://localhost:4200/api/v1/individual-groups/349 404 (Not Found)
它似乎在 individual_groups
到 individual-groups
现在在 API 文档中,通过向 api/v1/individual_groups/:id
发出 GET 请求可以找到一个单独的组
我正在使用 JSONAPIAdapter
并且已经设置了一个序列化程序:
export default DS.JSONAPISerializer.extend({
keyForAttribute: function(attr) {
return Ember.String.underscore(attr);
},
keyForRelationship: function(attr) {
return Ember.String.underscore(attr);
}
});
但这似乎并没有影响到这个特殊案例。
有没有办法确保当我调用 this.store.findRecord('individual_group', group_id)
时它会使用
向 API 发出请求
GET http://localhost:4200/api/v1/individual_groups/349
而不是
GET http://localhost:4200/api/v1/individual-groups/349
你应该重新定义 pathForType
adapter method. The default implementation 使用 dasherize:
//as is
pathForType: function(modelName) {
var dasherized = Ember.String.dasherize(modelName);
return Ember.String.pluralize(dasherized);
}
//to be
pathForType: function(modelName) {
var underscored = Ember.String.underscore(modelName);
return Ember.String.pluralize(underscored);
}
我正在尝试通过返回
来检索单个记录singleGroup: this.store.findRecord('individual_group', group_id)
然后我在控制台中收到此错误:
GET http://localhost:4200/api/v1/individual-groups/349 404 (Not Found)
它似乎在 individual_groups
到 individual-groups
现在在 API 文档中,通过向 api/v1/individual_groups/:id
我正在使用 JSONAPIAdapter
并且已经设置了一个序列化程序:
export default DS.JSONAPISerializer.extend({
keyForAttribute: function(attr) {
return Ember.String.underscore(attr);
},
keyForRelationship: function(attr) {
return Ember.String.underscore(attr);
}
});
但这似乎并没有影响到这个特殊案例。
有没有办法确保当我调用 this.store.findRecord('individual_group', group_id)
时它会使用
GET http://localhost:4200/api/v1/individual_groups/349
而不是
GET http://localhost:4200/api/v1/individual-groups/349
你应该重新定义 pathForType
adapter method. The default implementation 使用 dasherize:
//as is
pathForType: function(modelName) {
var dasherized = Ember.String.dasherize(modelName);
return Ember.String.pluralize(dasherized);
}
//to be
pathForType: function(modelName) {
var underscored = Ember.String.underscore(modelName);
return Ember.String.pluralize(underscored);
}