PUT 方法在 Play Framework Controller 中看起来如何?

How does a PUT method look in a Play Framework Controller?

是的,这可能是一个微不足道的问题,但我不知道在我的控制器中的 updatePerson() 方法中要做什么...

路线:

PUT     /person/:id                controllers.Application.updatePerson(id: Long)

Application.class(控制器)

public Result updatePerson(Long id) {
    ...
    return ok();
}

Play 框架版本 2.4

我不太确定你想在这里达到什么目的。但是你可以做以下事情

  1. 您可以使用 Play 的 DI 将后续层(例如 Service/DAO 层)注入您的控制器以委托您的请求。阅读 here 了解 Play 的依赖注入选择。

  2. 要更新数据存储中的人员记录,您需要确保数据库中已存在具有相同 ID 的人员。我认为你应该先处理保存功能,然后再回来更新。

代码应如下所示:

public Result updatePerson(Long id) {
    Person person = Person.find.byId(id);
    person.setName("Marcel");
    person.update();
    return ok();
}