Ember断言失败:您需要将模型名称传递给商店的modelFor方法

时间:2016-09-13 21:43:58

标签: ember.js ember-data

Ember 2.4.0

Ember Data 2.4.0

所以我试图返回一个对象" api-user-list"它由两个模型组成,一个名为&#34的寻呼机对象;寻呼机"以及一组名为" api-user"

的用户

我不认为我真的在使用序列化程序做任何事情,但这是代码

import DS from 'ember-data';

export default DS.RESTSerializer.extend({
    serialize: function(snapshot, options) {
        var json = this._super.apply(this, arguments);

        //json.subject = json.title;
        //delete json.title;

        return json;
    }
});

寻呼机型号

import DS from 'ember-data';
import { belongsTo } from 'ember-data/relationships';

export default DS.Model.extend({
    PageSize: DS.attr(),
    SkipPages: DS.attr(),
    SearchStr: DS.attr(),
    TotalCount: DS.attr(),
    PageCount: DS.attr()
});

apiUser Model

import DS from 'ember-data';

export default DS.Model.extend({
    UserName: DS.attr(),
    First: DS.attr(),
    Last: DS.attr(),
    Bio: DS.attr(),
    OrgId: DS.attr(),
    CreatedAt: DS.attr(),
    DeActivatedAt: DS.attr(),
    PasswordSetAt: DS.attr(),
    PhoneNumber: DS.attr()
});

复杂模型" api-user-list"

import DS from 'ember-data';
import Model from 'ember-data/model';
import { belongsTo, hasMany } from 'ember-data/relationships';

export default Model.extend({
    pager: belongsTo('pager', { async: false }),
    apiUser: hasMany('api-user', { async: false })
});

返回JSON

{
  "apiUserList": {
    "id": 1,
    "pager": {
      "id": 1,
      "PageSize": 2,
      "SkipPages": 0,
      "SearchStr": null,
      "TotalRecords": 2,
      "TotalPages": 1
    },
    "apiUser": [
      {
        "id": 3,
        "UserName": "dude 2",
        "First": "Allen",
        "Last": "Smith",
        "Bio": null,
        "OrgId": 0,
        "CreatedAt": "2016-07-14T19:27:20.757",
        "DeActivatedAt": null,
        "PasswordSetAt": "2016-07-14T19:32:38.34",
        "PhoneNumber": null
      },
      {
        "id": 2,
        "UserName": "dummyUser",
        "First": "dude",
        "Last": "dude last name",
        "Bio": null,
        "OrgId": null,
        "CreatedAt": "2016-07-08T10:53:35.017",
        "DeActivatedAt": null,
        "PasswordSetAt": "2016-07-27T16:07:35.073",
        "PhoneNumber": null
      }
    ]
  }
}

看起来正在返回正确的模型但是当#34; pager"正试图被推入商店:

  

断言失败:您需要将模型名称传递给商店的modelFor方法

在调试器中我可以看到我输入

  

function deserializeRecordId()

但是当它试图读取id.type变量时,它始终是“未定义的”'。有没有人知道我错过了什么?

0 个答案:

没有答案