Ruby on rails Heroku上的Rails-站点未加载-ActionView::Template::Error(资产管道中不存在资产“image.jpg”)
我已经使用Rails构建了一个简单的网站,这样我就可以将它部署到Heroku。它在本地运行良好,一切正常。它可以很好地部署到Heroku,但在打开网页()时,会显示以下错误: 很抱歉,出了点问题 如果您是应用程序所有者,请查看日志以了解更多信息 当我检查日志(在终端中运行heroku日志)时,它显示错误:Ruby on rails Heroku上的Rails-站点未加载-ActionView::Template::Error(资产管道中不存在资产“image.jpg”),ruby-on-rails,ruby,heroku,assets,pipeline,Ruby On Rails,Ruby,Heroku,Assets,Pipeline,我已经使用Rails构建了一个简单的网站,这样我就可以将它部署到Heroku。它在本地运行良好,一切正常。它可以很好地部署到Heroku,但在打开网页()时,会显示以下错误: 很抱歉,出了点问题 如果您是应用程序所有者,请查看日志以了解更多信息 当我检查日志(在终端中运行heroku日志)时,它显示错误: ActionView::Template::Error (The asset "a_clean_sample_1.jpg" is not present in the asset pipeli
ActionView::Template::Error (The asset "a_clean_sample_1.jpg" is not present in the asset pipeline.)
到目前为止,这只是一个有几个部分的单页网站。以下是github存储库:
失败的图像加载到app/views/welcome/home.html.erb第57行
Rails版本5.1.6,Ruby版本2.5.0
我已经仔细检查了图片是否在app/assets/images文件夹中,图片标签是否使用了文件扩展名
我试过运行heroku run rake assets:precompile,我试过使用rails12factor
gem,也试过不使用它。我曾尝试在config/environments/production.rb中将config.assets.compile=false
更改为true
,这确实让页面加载,但所有图像都忽略了样式,而且非常庞大
真正让我困惑的是,我已经部署了其他几个rails应用程序,同样的rails版本,同样的ruby版本,但之前没有一个出现过这个问题
以下是一个工作应用程序:
如果您能帮上忙,我们将不胜感激,因为您已经在谷歌上搜索了好几个小时,但运气不佳。解决此问题的最简单方法是;您需要按如下方式运行
rails资产:预编译rails\u ENV=production
git添加。
git提交-m{message}
git-push-heroku-master
(再次将代码推送到heroku)我试着用你的代码来做,效果很好。谢谢你,这成功了!我想我遇到的问题是我在运行rake资产:用heroku运行在heroku上预编译。非常感谢您提供的快速解决方案:)