EmberJS没有发现任何模型,但它就在那里

时间:2015-02-24 05:01:48

标签: javascript ruby-on-rails testing ember.js model

我正在编写一个ember-cli应用程序。我有以下型号:

// app/models/school.js
export default DS.Model.extend({
  name: DS.attr('string', { defaultValue: '' })
});

它是使用像我所有其他模型一样的余烬生成器生成的。它还有一个功能单元测试,用于测试它的name属性的默认值。所有测试都是绿色的,直到另一个模型属于这样的学校:

// app/models/professor.js
export default DS.Model.extend({
  name: DS.attr('string', { defaultValue: '' }),
  email: DS.attr('string', { defaultValue: '' }),

  courses: DS.hasMany('course'),
  posts: DS.hasMany('post'),
  school: DS.belongsTo('school')
});

在我添加school属性之前,此测试完全是绿色的。在'model:school'帮助器的needs数组中定义了moduleForModel,它甚至是绿色的:

// tests/unit/models/professor-test.js
// this is green w/o belongsTo('school') in the model
moduleForModel('professor', {
  // Specify the other units that are required for this test.
  needs: ['model:school', 'model:post', 'model:course']
});

我得到的错误是:

Error: No model was found for 'school'

这是模型目录

$ ls app/models/
course.js  post.js  professor.js  school.js  student.js

为什么找不到我的模特?

1 个答案:

答案 0 :(得分:-2)

您需要在测试中导入 学校模型:

import '[appName]/models/school';