【问题标题】:Ember error: No model was foundEmber 错误:未找到模型
【发布时间】:2015-02-24 12:12:46
【问题描述】:

当我访问具有模型钩子的路线时:

export default Ember.Route.extend({
  model: function () {
    return this.store.find("account_type");
  }
});

我收到此错误:

处理路由时出错:注册未找到“account_type”的模型错误:未找到“account_type”的模型

我在模型中有一个名为 account_type.js 的文件:

import DS from 'ember-data';

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

模拟路线:

  app.use('/api/account_type', accountTypesRouter);

有什么想法吗?

【问题讨论】:

    标签: ember.js ember-data


    【解决方案1】:

    看起来您正在使用 ember-cli,如果是这种情况,名称的标准分隔符约定是破折号,而不是下划线。我认为如果您更改路线以查找“帐户类型”,那应该可以解决它。

    export default Ember.Route.extend({
      model: function () {
        return this.store.find("account-type");
      }
    });
    

    如果这不起作用,您可能还需要将文件名更改为 account-type.js

    编辑

    看起来像dasherized file names are required

    【讨论】:

    • 我的模拟路由器怎么样?我应该把它改成:app.use('/api/account-type', accountTypesRouter); from app.use('/api/account_type', accountTypesRouter);
    • 由于某种原因,我的模拟仅在我拥有它时才有效:** app.use('/accountTypes', accountTypesRouter);**
    • @Beerlington:谢谢,我遇到了同样的问题,使用带有camelCase的模型名称,但将其更改为虚线格式后它可以工作。
    猜你喜欢
    • 2017-01-28
    • 1970-01-01
    • 1970-01-01
    • 2014-06-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多