ember数据2.3.x如何使用jsonapi获取元数据

ember data 2.3.x how to get the metadata with jsonapi

DEBUG: -------------------------------
DEBUG: Ember : 2.3.0
DEBUG: Ember Data : 2.3.1
DEBUG: jQuery : 2.1.4
DEBUG: Ember Simple Auth : 1.0.0
DEBUG: -------------------------------

我的服务器端像这样用 jsonapi 发送数据:

  data: [{  
   ... ,  
   1: {  
     attributes: {  
       id: '123',  
       ... ,   
       meta: {  
         price_total: {  
           datasets: ... ,  
           labels: ...  
         }  
       }  
     }  
   },  
   ...  
 }]

我检查了文档 https://guides.emberjs.com/v2.3.0/models/handling-metadata/ ,检查以获取我的模板中的元数据。

 {{#each model as |fittingItem index|}}  
   ...  
   {{fittingItem.meta}}  
   ...  
 {{/each}}

我无法获取元数据。

我发现了一些问题 https://github.com/emberjs/data/issues/2905 , https://github.com/emberjs/data/issues/3419。他们也解决不了我的问题。

也许有更好的方法来解决这个问题?

元数据(因为它与 JSONAPI 相关)目前仅在 Ember-Data 中支持数据集合,并且应定义为顶级文档键。

http://jsonapi.org/format/#document-top-level

看来您要实现的是每个单独记录的某种级别的元数据,如果您在模型定义中定义自定义元属性,这是可能的。

fooMeta: DS.attr()

使用空的 attr() 允许 ember-data 只让从 json 到 "pass through" 的任何值到您的模型而无需任何转换..(尽管您可以还定义了一个自定义转换来稍微调整你的元值...)

还有一个插件 ember-data-model-fragments,它可能有助于在您的模型中定义任意 "chunks" 数据。

以下 声明了如何重新打开 DS.Model 以通过 find/save/destroyRecord 解析调用阶段的元数据,这些调用阶段按其性质处理单个实例,