推送到Heroku后找不到CSS

时间:2014-01-08 00:09:05

标签: css heroku ruby-on-rails-4 asset-pipeline

当我在本地运行时,一切正常,但是当我推送到heroku时失败了。我发现我需要修改app/assets/stylesheets/中的所有.css文件以获得.css.scss扩展名,并确保我的Gemfile包含:

gem 'sass-rails', '4.0.1'
group :production, :staging do
  gem 'rails_12factor' # for heroku
end

在我的.css.scss文件中,我现在使用image-url()代替url()指向指纹图像(由heroku和资产编译业务进行指纹识别和重新组织)。

app/views/layouts/mycontrollername.html.erb中的

<head>
  ...
  <%= stylesheet_link_tag "path/to/css/file" %>
</head>

但我仍然无法找到正确的道路。当我查看源代码时,除了指纹外,我看到了我期望的路径:path/to/css/file.css而不是path/to/css/file-somemd5hash.css。请注意,该路径不包含assets / path / to / css / file。

http://guides.rubyonrails.org/asset_pipeline.html#coding-links-to-assets

修改

我已经确认在public / assets /中heroku上没有已编译的css文件。有一个application.js文件(它是空的),即使我有一个.js.coffee文件为每个控制器。我没有application.css,每个控制器只有一个.css。

1 个答案:

答案 0 :(得分:0)

这个宝石帮助我克服了它,我想很快就会合并到rails master中:

gem'srrockets_better_errors'

https://github.com/schneems/sprockets_better_errors