ember.js - 使用 JSONAPI 适配器加载带有 ember 数据的蛇形案例字段

标签 ember.js ember-data

如果我有一个从 api 返回的蛇形字段,我应该如何在模型中定义该字段?我正在使用 JSONAPIAdapter。似乎一个词的字段工作正常,但蛇形字段返回未定义。

这就是我在模型中定义它的方式:

import DS from 'ember-data';

export default DS.Model.extend({
    typecode_desc: DS.attr('string'),
    contactnum: DS.attr('string'),
    email: DS.attr('number'),
    individual: DS.belongsTo('individual', {async: false})
});

这就是 json 从 API 返回的方式:
1: {
  id: "96"
  type: "contact_infos"
  attributes: {
    typecode_desc: "E-mail address"
    contactnum: "billybear@yahoo.com"
    email: 1
  }
}

但是,在 ember 检查器中,typecode_desc返回未定义。有什么我需要做的事情来告诉 ember 字段会像蛇一样回来吗?

最佳答案

您需要定义 keyForRelationship在您的 JSON API 序列化程序中。它看起来像这样:

import DS from 'ember-data';
import Ember from 'ember';

export default DS.JSONAPISerializer.extend({
  keyForAttribute: function(attr) {
    return Ember.String.underscore(attr);
  },
  keyForRelationship: function(attr) {
    return Ember.String.underscore(attr);
  }
});

关于ember.js - 使用 JSONAPI 适配器加载带有 ember 数据的蛇形案例字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32508044/

相关文章:

ember.js - Ember数据仅填充 “id”属性

javascript - 将属性设置为未定义时未通知观察者

ember.js - 如何撤消对模型的更改?

ember.js - 如何观察 Ember-cli 模型中每个项目的变化

mongodb - Ember、Ember 数据和 MongoDB 的 _id

javascript - Ember.js有很多关系数据使用fixture显示

ember.js - 如何在Ember.js中的 Controller 之间进行通信

ember.js - Ember 在转换后不渲染

ember.js - 从服务器刷新列表时如何忽略脏记录?

javascript - Ember.Select View 提示传递的值