【发布时间】:2020-11-10 01:31:19
【问题描述】:
我正在使用 Grape API 实现一个 JSON API V1 兼容的 API,该 API 使用 AR 作为 ORM。我对创建嵌套资源/关系的格式有点困惑。看起来我们需要一次创建一个资源,并且可以链接到现有资源。但是我们不能说在同一请求中为has many 关系创建记录。
我的情况:有Donation 模态。它有很多Splits。拆分属于Fund。我需要创建一个包含多个拆分的捐赠。
问题:如何根据JSON:API 的建议构建API?
通过几次文档,我认为我无法在一次 API 调用中进行捐赠,并且必须单独创建每个资源,并且可能会运行最终提交以触发捐赠。
第 1 步:创建捐赠 - 假设返回 ID 100
发布/api/v1/donations
{ type: "donation", data: { comments: "abc" } }
第 2 步:创建拆分 1
发布/api/v1/splits
{
type: "split",
data: { amount: 100_00 },
relationships: {
data: [{ type: "fund", id: 5 }, { type: "donation", id: 100 }]
}
}
最后:用类似的东西触发捐赠
补丁/api/v1/donations/100
{
type: "donation"
data: {
state: "process"
}
}
有没有办法在一个请求中创建它?
【问题讨论】:
标签: json-api