你如何用 Panache 更新一个已经存在的实体?
How do you update an already persisted entity with Panache?
我正在用 panache 在 quarkus 中编写 JaxRS 资源,我注意到我无法获得 PUT/PATCH 工作请求。更具体地说,我似乎无法更新数据库中以前保存的实体。我认为我做错了什么,但后来我尝试了可以找到的 quarkus-quickstart for panache here, and I noticed that the PUT 在那里也不起作用。
它所做的是使用 findById
方法获取一个实体,更改该实体,然后 returns 更改该实体。但它实际上并没有在数据库中改变它。对于快速入门,我按照 README 中的建议使用 docker 设置数据库。
更新已持久化的 Panache 实体的推荐方法是什么?
示例请求流程
这些是我使用 quarkus quickstart 得到的请求和响应:
GET
localhost:8080/水果。
- 响应:
[ {"persistent": true, "id": 1, "name": "Cherry"} ]
PUT
localhost:8080/fruits/1,正文:{ "name": "edited name" }
- 响应:
{ "persistent": false, "id": 1, "name": "edited name" }
GET
localhost:8080/水果
- 响应:
[ {"persistent": true, "id": 1, "name": "Cherry"} ]
我们可以用 "I confirm that it is a bug in 0.12.0. It's fixed in master and the upcoming 0.13.0 fixes it. " 来自评论来结束这个问题。
我正在用 panache 在 quarkus 中编写 JaxRS 资源,我注意到我无法获得 PUT/PATCH 工作请求。更具体地说,我似乎无法更新数据库中以前保存的实体。我认为我做错了什么,但后来我尝试了可以找到的 quarkus-quickstart for panache here, and I noticed that the PUT 在那里也不起作用。
它所做的是使用 findById
方法获取一个实体,更改该实体,然后 returns 更改该实体。但它实际上并没有在数据库中改变它。对于快速入门,我按照 README 中的建议使用 docker 设置数据库。
更新已持久化的 Panache 实体的推荐方法是什么?
示例请求流程
这些是我使用 quarkus quickstart 得到的请求和响应:
GET
localhost:8080/水果。- 响应:
[ {"persistent": true, "id": 1, "name": "Cherry"} ]
- 响应:
PUT
localhost:8080/fruits/1,正文:{ "name": "edited name" }
- 响应:
{ "persistent": false, "id": 1, "name": "edited name" }
- 响应:
GET
localhost:8080/水果- 响应:
[ {"persistent": true, "id": 1, "name": "Cherry"} ]
- 响应:
我们可以用 "I confirm that it is a bug in 0.12.0. It's fixed in master and the upcoming 0.13.0 fixes it. " 来自评论来结束这个问题。