在我的公司,我们正在重写大型rails应用程序以使用rails 5 api only模式,我正在评估ember.js作为可能的前端,用于单独的应用程序并由nginx的。我在localhost的测试中遇到了一个问题,我希望你可以建议修复或补丁。
// app / adapters / application.js
import DS from 'ember-data';
import DataAdapterMixin from 'ember-simple-auth/mixins/data-adapter-mixin';
import config from '../config/environment';
export default DS.JSONAPIAdapter.extend(DataAdapterMixin, {
host: ${config.host},
authorizer: 'authorizer:jwt',
namespace: 'api/v1'
});
// app / models / device-profile.js
import DS from 'ember-data';
export default DS.Model.extend({
name: DS.attr('string'),
devices: DS.hasMany('device'),
assignedFlags: DS.hasMany('assigned-flag'),
deviceProfileGpios: DS.hasMany('device-profile-gpio')
});
// app / routes / device-profiles.js
import Ember from 'ember';
export default Ember.Route.extend({
model() {
return this.store.findAll('device-profile')
}
});
当我转到http://localhost:4200/device-profiles时,我在rails控制台中收到以下404错误
Started GET "/api/v1/device-profiles" for ::1 at 2017-04-30 08:10:30 -0400
ActionController::RoutingError (No route matches [GET] "/api/v1/device-profiles"):
是否有一些我缺少的设置或这是一个错误?
答案 0 :(得分:0)
管理以找到关于ember data github site
的问题的答案我将此添加到我的应用程序适配器
pathForType: function(type) {
var underscored = Ember.String.underscore(type);
return Ember.String.pluralize(underscored);
}