问题描述
我已经更新了一个 Rails '6.0.3' 应用程序以使用 hotwire-rails
而不是 turbolinks
并且收到 304 的响应,而 turbo_frame_tag
中的视图没有更新
我从头开始创建了一个新的 Rails 应用并成功实现了热线,所以我猜测问题在于我现有应用中残留的 Javascript。
服务器请求
服务器请求与新应用的请求匹配,因此似乎不是问题,请注意 200 状态代码。
Started GET "/models/1/edit" for ::1 at 2021-01-18 13:33:22 +1100
Processing by ModelsController#edit as TURBO_STREAM
Parameters: {"id"=>"1"}
User Load (0.2ms) SELECT "users".* FROM "users" WHERE "users"."id" = $1 ORDER BY "users"."id" ASC LIMIT $2 [["id",2],["LIMIT",1]]
Model Load (0.1ms) SELECT "models".* FROM "models" WHERE "models"."id" = $1 LIMIT $2 [["id",1],1]]
↳ app/controllers/models_controller.rb:15:in `edit'
Rendering models/edit.haml
Rendered models/edit.haml (Duration: 1.1ms | Allocations: 1500)
Completed 200 OK in 4ms (Views: 1.3ms | ActiveRecord: 0.3ms | Allocations: 4244)
浏览器
除了状态代码是 304 而不是 200 并且显然没有呈现视图更改之外,浏览器响应似乎是相同的。
重新创建的步骤
- 现有的 Rails '6.0.3' 应用
- 更新 Gemfile 以删除
tubolinks
和webpacker
trash app/javascript
trash node_modules/**
rails hotwire:install
额外信息
当我运行 rails hotwire:install
时,我收到一条 File unchanged! The supplied flag value not found! app/assets/config/manifest.js
消息 - 我检查了该文件,它与新应用中生成的文件相同。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)