【发布时间】:2011-10-04 17:39:40
【问题描述】:
我收到以下错误:
Sprockets::Helpers::RailsHelper::AssetPaths::AssetNotPrecompiledError in Photos#edit
Showing .../app/views/photos/_form.html.haml where line #49 raised:
taxonomy/focus-building.jpg isn't precompiled
Extracted source (around line #49):
46: = focus.code
47: .tooltip
48: %span.name= focus.name
49: = image_tag("taxonomy/focus-#{focus.code.downcase.dehumanize}.jpg")
50: / Help Overlay
51: .help
52: %a.overlay{:href=>"#", :rel=>'#help-focus'} Learn more about focus
此图像文件位于app/assets/images/taxonomy/focus-building.jpg。我已经运行了rake assets:precompile RAILS_ENV=production,但据我所知,图像并没有被复制到public/assets 目录中。
奇怪的是,在 SCSS 中使用 image-url() 引用的所有资产都可以正常工作。为什么使用image_tag 引用此图像时报告未预编译?
【问题讨论】:
-
您使用的是 Rails 3.1.1 还是 3.1.0?
-
我正在为此添加 +1。我在 Rails 3.1.3 上,我遇到了同样的问题。我即将准备好对资产管道进行打击。
-
@Andrew:你最终让它工作了吗?我在 image_tag 提供的资产无法在生产中工作时遇到同样的问题!
-
@bpn 老实说,我终于将需要在 CSS 之外引用的图像移到了公共文件夹中。我没有回去尝试不同的修复方法,可能有更好的方法,或者问题可能随着 Rails 的更新而消失...我没有测试过,所以我不知道。
-
@Andrew- 我开始知道我的问题出在哪里......图像一直在工作!我只需要清空浏览器的缓存并重新加载页面!这一定与到期标题有关..但现在一切都很好..
标签: ruby-on-rails ruby-on-rails-3.1 asset-pipeline