如何将对象数组(hasMany关系数据)转换为id数组?

nx7onnlm  于 2022-10-20  发布在  其他
关注(0)|答案(1)|浏览(163)

我想获取数据并在UI中显示。以下是我如何编写以获取“电影”数据。
let movies= yield this.store.findAll('movie');
我记录“电影”。如下图所示,没有“照片”的数据。


小时
这是网络:

我从hasura那里得到的数据如下:

{
  "data": {
    "movies": [
      {
        "id": "584db434-5caa-475e-b3ec-e98e742f0030",
        "movieid": "abc123",
        "description": "Penquins dancing in antactica",
        "photos": [
          {
            "id": "c4d2833a-4896-42b0-ae8b-0ab9fe71d1d4"
          },
          {
            "id": "e04697e3-21fe-4f0e-8012-443f26293340"
          }
        ]
      }
    ]
  }
}

但恩伯。js无法读取和渲染关系数据(照片)。“照片”数据应该是这样的吗?

"photos": [c4d2833a-4896-42b0-ae8b-0ab9fe71d1d4, e04697e3-21fe-4f0e-8012-443f26293340]

如何在Ember中转换它?还是在Hasura?

holgip5t

holgip5t1#

感谢您更新您的问题!
由于您使用的是ember数据,因此需要一个自定义适配器和序列化程序来将数据格式化为ember的预期格式(因为API决定如何构造数据的方式有很多)。
更多信息可以在这里找到:https://guides.emberjs.com/release/models/customizing-adapters/https://guides.emberjs.com/release/models/customizing-serializers/
你的数据结构已经相当好了,所以转换应该会很顺利。如果您有问题,请回复

相关问题