ruby-on-rails - 在 Rails 开发中完成 500 内部服务器错误
问题描述
在开发我的 Rails 应用程序时,我遇到了 Completed 500 Internal Server Error。我正在关注开发的在线教程,它以前运行良好。但是,从今天开始,如果我尝试渲染页面而不是正常的“是的,你在 Rails 上!”,它会给我这个错误。页。
Rendering messages/index.html.erb within layouts/application
Rendered messages/index.html.erb within layouts/application (Duration: 0.6ms | Allocations: 199)
Completed 500 Internal Server Error in 19ms (ActiveRecord: 0.0ms | Allocations: 6751)
我已经在 config/routes.rb 中正确定义了我的路由(路由到消息#index),我已经在 app/controllers/message_controller.rb 中定义了一个适当的控制器,并且我已经为消息#index 定义了一个适当的视图,但它仍然一直给我这个错误。
日志只包含上面的片段,当我从网上检查时,似乎没有任何有用的信息可供我调试。
任何帮助表示赞赏,谢谢!
解决方案
我通过“rails s -e test”发现了问题!它详细显示了错误消息,它说表 Messages 不存在,尽管它确实存在。
然后我通过从Rails 中删除 test/fixtures 中的 messages.yml 来解决它:旧的,不存在的数据库表会导致测试出错。虽然不知道为什么它会因为删除此文件而起作用,但感谢您的回答!
推荐阅读
- c++ - 定义聚合
- tensorflow - 在 keras 优化器中获取 epoch
- javascript - 如何判断页面上是否有任何待处理(未完成)的 Promise
- teamcity - TeamCity 计划触发器在每个月的最后一个星期一运行
- javascript - 如何使用异步调用以获得最佳性能
- python - 如何使用 Python 创建一个循环来计算每个时间序列子样本序列的平均值?
- amazon-web-services - 如何将存储桶策略 json 转换为 serverless.yaml
- c# - 输入错误的用户名和密码时如何给出错误
- html - 什么定义了您需要按 VO + shift + down 才能进入 macOS 画外音的组?
- python - 如何更改 python-pptx 中的文本颜色?