9

我正在尝试在 ember-cli 应用程序中测试模型关系,但它一直告诉我:No model was found for 'rateType'。它似乎找不到我的模型。

文件

~app/models/account.js
~app/models/rate-type.js

账户模型

export default DS.Model.extend({
    ...
    rateType: DS.belongsTo('rateType'),
});

测试

import Ember from 'ember';
import { test, moduleForModel } from 'ember-qunit';
import Account from 'app/models/account';
import RateType from 'app/models/rate-type';

moduleForModel('account', 'Account Model', {
  // Specify the other units that are required for this test.
  needs: ['model:rate-type']
});

test('rateType relationship', function() {
    expect(0);
    this.subject(); //error here
//    var relationships = Ember.get(Account, 'relationships');
//    deepEqual(relationships.get('rate-type'), [
//        { name: 'rateType', kind: 'belongsTo' }
//    ]);
});

我已经尝试过将需求属性设置为骆驼外壳,但它根本不喜欢那样。 needs: ['model:rateType', 'model:fuelGroup']

4

2 回答 2

13

我认为您需要的是需求关键字:

moduleForModel('post', 'Unit | Model | post', {
  needs: ['model:comment', 'model:user']
});

我在这里的文档中找到了它:http: //guides.emberjs.com/v1.10.0/testing/testing-models/

于 2015-08-03T03:54:50.600 回答
3

您的问题与模型有关。尝试在 belongsTo 关系中简化“rate-type”。

export default DS.Model.extend({
    ...
    rateType: DS.belongsTo('rate-type')
});
于 2014-08-17T01:13:52.800 回答