gpt4 book ai didi

forms - Rails 7 + Turbo : Turbo navigates away when receiving 422 unprocessable entity

转载 作者:行者123 更新时间:2023-12-05 05:39:35 33 4
gpt4 key购买 nike

根据各种消息来源,Rails 7 中表单验证失败的方法是使用状态 422 无法处理的实体进行响应。然而,在我的例子中,这导致 Turbo 发出另一个 GET 请求,这不太可能是预期的结果。

日志如下所示:

Started POST "/users/new" for 127.0.0.1 at 2022-06-16 17:27:48 +0200
...
TRANSACTION (0.3ms) ROLLBACK
...
Rendered html template (Duration: 0.0ms | Allocations: 4)
Completed 422 Unprocessable Entity in 133ms (Views: 1.2ms | ActiveRecord: 10.9ms | Allocations: 54437)

Started GET "/users/new" for 127.0.0.1 at 2022-06-16 17:27:48 +0200
...

因此,从 Rails 的角度来看,一切似乎都很正常,因为服务器会响应所需的 422 状态代码。在浏览器中检查响应时,我看到带有错误消息的表单。然而,出于某种原因,Turbo 然后发出重定向到 /users/new 而不是让浏览器显示包含错误的表单。

更新:表单是使用 simple_form_for 生成的。

我如何找出 Turbo 重新加载页面的原因?

最好的,卡尔山

最佳答案

当服务器以部分表单发布响应时,就会发生这种情况。返回一个完整的站点,包括 <html>等解决问题。

关于forms - Rails 7 + Turbo : Turbo navigates away when receiving 422 unprocessable entity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72648355/

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