是否允许与父母的父母建立 JSON:API 资源的关系?



我有以下层次结构:

venue -> concert -> booking

在预订中,我有音乐会的关系。但是预订是否也应该与场地有关?还是在这种深度建立关系是一种不好的做法?

如果预订中也有座位怎么办?与场地的关系是否仍然合理?

还是做两个请求来获得场地更好? 例如,使用预订 -> 演唱会关系来获取演唱会和场地之间的关系?

JSON:API 响应对象中的关系应与现实世界匹配。我认为预订场地之间建立直接关系没有任何价值,如果这种关系实际上是通过音乐会

您不需要直接关系来避免额外的请求。JSON:API 规范支持包含深度嵌套关系。

假设预订可从GET /bookings终结点获得,客户端可以要求后端包含执行GET /bookings?include=concert.venue请求的场地(假设关系在booking上命名为concert,在concert上命名为venue(。音乐会将被含蓄地包括在内。

有关旁加载相关数据的更多信息,请参阅 JSON:API 规范中的包含相关资源和复合文档章节。

最新更新