gpt4 book ai didi

json - 在 json rest web 服务中表示外键关系的标准方法

转载 作者:行者123 更新时间:2023-12-04 12:55:35 25 4
gpt4 key购买 nike

我有一个 Wine 实体,它与一个国家有一对多的关系(一个国家 - 许多葡萄酒)

我可以想到两种在 json Web 服务中表示它的方法:

一种是将整个国家包含在 json 中

{
id: 76,
code: "FR",
name: "France"
}

{
id: 79,
name: "Bordeaux",
country: {
id: 76,
code: "FR",
name: "France"
},
year: "2005"
}

另一种是将每个国家/地区的属性(property)都包括在同一级别,并带有前缀
{
id: 79,
name: "Bordeaux",
countryId: 76,
countrCode: "FR",
countryName: "France"
year: "2005"
}

无论如何,在更新或创建新酒时,我只会保存国家/地区ID,不允许从酒的端点修改国家/地区

第二种方法更容易实现(我会在 db 上有一个连接 View ,序列化器只会将每个字段转换为 json),但我认为第一种更优雅

只是想知道这种情况是否有任何标准,以防万一没有更常见的方法......

ps:我不是想就解决方案的“restfullness”展开辩论,只是在寻找一种巧妙而简单的方法来处理这种关系......

最佳答案

在您的情况下,国家/地区小到可以考虑每次都嵌套它。但是,情况并非总是如此,而且我没有找到处理此问题的标准。

我已经使用自定义引用类型完成了此操作:

{
"id": 79,
"name": "Bordeaux",
"country": {
"ref": {
"id": 76,
"uri": "/country/76"
}
},
"year": "2005" }

一些有用的想法 here以及。

关于json - 在 json rest web 服务中表示外键关系的标准方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12170053/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com