您好我想知道哪个是使用ember-data中相关资源的最佳解决方案。 为了构建REST后端。
1)嵌入资源
user: {
id: "foo",
albums: [
album: {
id: "foo",
name: "bar",
description: "foobar",
},
album: {
id: "foobar"
name: "foobarfoo",
description: "fumanchu",
},
],
}
2)资源的嵌入id
user: {
id: "foo",
albums: [
album: {
id: "foo",
},
album: {
id: "foobar"
},
],
}
3)链接资源
user: {
id: "blabla",
links: {
"self": { "href": "/users/blabla" },
"albums": { "href": "/albums/blabla" }
},
}
你认为可以在HATEOAS中使用hipermedia吗?
提前致谢
答案 0 :(得分:1)
你看过ActiveModelSerializers宝石吗?
在服务器端使用Rails时,这是完成工作的更简单方法。
对于关系,它可以嵌入或使用对子资源的引用。引用(我建议)以这种方式序列化:
{
users: [{
id: 42,
firstName: "John",
albums: [ 1, 2, 3 ]
}]
}
{
albums: [{
id: 1,
name: "Foo"
}, {
id: 2,
name: "Bar"
}, {
id: 3,
name: "Buzz"
}]
}
此处,相册也可作为侧载数据包含在第一个哈希中:
{
users: [{
id: 42,
firstName: "John",
albums: [ 1, 2, 3 ]
}],
albums: [{
id: 1,
name: "Foo"
...
}]
}