Vapor 4无法使用Put HTPP请求更新可选父级



我有一个称为司法管辖区的模型,其中包含政治管辖权。现在有些司法管辖区可以位于其他司法管辖区,所以我有一个可选的父司法管辖区…

现在我可以很好地创建新的司法管辖区,但是如果我试图使用put请求来更新司法管辖区父级,我得到以下错误:

FluentKit/OptionalParent.swift:20: Fatal error: OptionalParent relation OptionalParent<Jurisdiction, Jurisdiction>(key: parent_jurisdiction_id) is get-only.
2022-05-18 13:39:12.421882-0700 Run[32583:5555712] FluentKit/OptionalParent.swift:20: Fatal error: OptionalParent relation OptionalParent<Jurisdiction, Jurisdiction>(key: parent_jurisdiction_id) is get-only.```
<标题>辖区模型h1> 辖迁移h1> 辖控制器h1> 用如下所示的put HTTP请求:http://localhost:8080/jurisdictions和以下内容产生错误…我不知道该怎么办。
{
"scope": "locasl",
"id": "0C6D5F6E-0244-4ABE-847F-2AF89CA27C30",
"jurisdiction": {
"id": "128133B0-25FE-4B6C-B211-CE01AA236AF9"
},
"name": "local"
}

使用Fluent和relations,如果您试图设置属性,则需要通过属性包装器而不是属性本身来进行设置。在你的例子中应该是

$0.$jurisdiction.id = jurisdiction.id

这允许您仅使用父ID而不是需要整个父ID来更新关系,就像初始化器一样。

最新更新