Не удается получить отношения JSONAPI для заполнения данных ember для вложенных моделей - PullRequest
0 голосов
/ 18 мая 2018

Я пытаюсь заставить вложенные отношения работать для моего API, но пока безуспешно.Каждый «отчет» может иметь несколько «узлов».Вот мои модели:

//model report.js

export default DS.Model.extend({
  // == Relationships =========================================================
  nodes: hasMany('node', {async: false})// to check this inverse: null
})
//model node.js
export default DS.Model.extend({
  changeType: attr('string'),
  report: belongsTo('report')
})

вот мой сериализатор для report.js

// serializer for report.js
export default DS.JSONAPISerializer.extend({
  keyForAttribute: function (attr) {
    return attr
  },
  keyForRelationship: function (key) {
    return key
  },

  normalizeResponse: function (store, primaryModelClass, payload, id, requestType) {
    return this._super(store, primaryModelClass, this.getNewPayload(payload), id, requestType)
  },

  getNewPayload (payload) {
    let newPayload = {
      data: []
    }
    if (!isNone(payload)) {
      let nodeId = 1
      if (payload.data instanceof Array) {
        let nodeRelationship = []
        let included = []
        payload.data.map((record) => {
          nodeRelationship.pushObject({id: nodeId, type: 'node'})
          included.pushObject({id: nodeId, type: 'node', attributes: record.node}) // attributes: record.node
          nodeId++
        })
        newPayload.data.push({
          id: 0,
          type: 'report',
          attributes: {},
          relationships: {
            nodes: {
              data: nodeRelationship
            }
          },
          included: included
        })
      }
    }
    return newPayload
  }

})

вот как выглядят мои данные.

export default {
  "data": [
    {
      "node": {
        "changeType": "added",
        "name": "node1"
      }
    },
    {
      "node": {
        "changeType": "removed",
        "name": "nodel2"
      }
    }
  ]
}

Я не уверен, что я делаю здесь неправильно, когда я проверяю данные ember, модель узла пуста.Я ценю любую помощь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...