【发布时间】:2023-03-30 19:41:01
【问题描述】:
在生产环境中运行我的 Rails 4.1 项目时出现以下错误:
ActionView::Template::Error (no implicit conversion of Fixnum into String):
8: %meta{content: "", name: "description"}/
9: %meta{content: "", name: "author"}/
10: = stylesheet_link_tag 'application', media: 'all'
11: = csrf_meta_tags
12: %body
13: .header.navbar.navbar-inverse
14: = render 'layouts/header'
对我来说没有任何意义的是在开发中一切正常,上面的错误确实让我不知道实际错误是什么(没有特定的行号),并且 HAML 模板中没有任何内容出现在我。
当我的 UsersController 中的以下代码运行时,我也会遇到类似的错误:
@user = User.last
同样,在开发中工作得很好,但在生产中它告诉我 TypeError(没有将 Fixnum 隐式转换为字符串)。
我是否忽略了什么?我没有看到任何需要类型转换的东西。
注释掉我提到的最后一行不会影响其他错误。
【问题讨论】:
-
您是否在启动服务器或尝试访问特定网页时收到此错误?
-
可能是您的预编译资产中出现了一些问题。你可以尝试用
rake assets:precompile重建那些。请记住,在生产模式下,您必须touch tmp/restart.txt才能使任何更改生效,甚至是视图。
标签: ruby-on-rails ruby types runtime-error production