我试图在我的rails应用程序中加载一些静态页面和文件(图像,css和javascripts)进行测试。但是没有加载图像也没有加载引导程序。我在服务器上运行之前尝试了不同的选项,如下面的Stackoverflow所示(rails server
)
使用命令rake assets:precompile
并使用' rake tmp:clear'或手动删除tmp目录中的内容
更改图片代码的HTML语法,以在资源目录../../assets/images/hero-images/*.jpg
下打开不同的图片,如:
在:
<img src="../../assets/images/hero-images/abyssal_underlord_sb.png">
现在:
<%= image_tag("../../assets/images/hero-images/abyssal_underlord_sb.png") %>
../..
基本上告诉我,我必须返回app
目录才能访问images文件夹,但它仍然无法正常工作
RAILS_ENV=production bundle exec rake assets:precompile
,但也没有运气。 更新:
config
目录中的配置。我在应用的config.serve_static_assets = true
文件中有这一行development.rb
(甚至尝试rake assets:precompiles
但仍然没有运气。答案 0 :(得分:3)
您可以通过2种方式渲染位于application.rb
内部文件夹的图像。
1在config.assets.paths << Rails.root.join('app', 'assets', 'hero-images')
Dir.glob("#{Rails.root}/app/assets/images/**/").each do |path|
config.assets.paths << path
end
<img src="assets/hero-images/abyssal_underlord_sb.png">
<%= image_tag("abyssal_underlord_sb.png")%>
直接访问图像
<%= image_tag("hero-images/abyssal_underlord_sb.png")%>
2。只需在文件名上方添加内部文件夹名称。
DatabaseReference
请参阅此链接https://learn.co/lessons/images-and-the-asset-pipeline