我正在将一个非常古老的项目升级到最新版本的rails。所以我已经阅读了大量关于rails 3.0和3.1之间Asset管道的更改,包括整个页面的this,并且我已经按照第9部分中的所有步骤进行了操作。我还阅读了相当多的堆栈交换问题处理与我的问题似乎相同的问题。这些都不起作用。
在app/views/layouts/_sidebar.html.erb
我有这个html:
<img id="admin_img" style="border:none"
src="/images/<%= in_server_menu ? 'expanded' : 'collapsed' %>.gif" />
升级后,我已将src=
更改为以下所有内容:
src="<%= image_path(in_server_menu ? 'expanded.gif' : 'collapsed.gif' )%>"
src="/assets/<%= in_server_menu ? 'expanded' : 'collapsed' %>.gif"
src="/assets/images/<%= in_server_menu ? 'expanded' : 'collapsed' %>.gif"
src="assets/<%= in_server_menu ? 'expanded' : 'collapsed' %>.gif"
src="app/assets/images/collapsed.gif"
和许多类似的路径,但图像无法加载。前两个的实际HTML输出是
src="/assets/collapsed.gif"
哪个APPEARS是正确的,因为我的文件系统如下所示:
project_folder
->app
->assets
->images
->collapsed.gif
Firefox显示默认的“损坏的图像”缩略图,而图像信息显示它是0字节且无法加载,这让我觉得它没有找到。我自从进行更改后重新启动了服务器,并使用Firefox手动打开文件,因此图像不会中断。
Rails.application.assets.paths
包含
/path/to/the/project/folder/app/assets/images
以及其他资产文件夹 我已经确认我正在修改的src标签确实是我正在看的破碎图像,所以没有那么简单。
我还能做些什么来加载这个图像?我可以采取哪些其他故障排除步骤?当我加载页面并观察服务器输出时,我也遇到了其他未加载的资产问题,但是我还没有解决这些问题。
答案 0 :(得分:0)
尝试: -
<%= image_tag (in_server_menu ? "expanded.gif" : "collapsed.gif"), :id => "admin_img", :style => "border:none" %>