编译CSS资产时出错(Compass + Sass + Heroku)

时间:2012-10-22 19:31:06

标签: ruby-on-rails heroku sass compass-sass

我有一个在Heroku上运行的网站使用Compass和Saas工作正常(在推送到Heroku时编译资产似乎没问题)。

我在资源中添加了一个新文件夹,以命名其他样式,如此

/app/assets/stylesheets/site/site1.css
/app/assets/stylesheets/site/site2.css
/app/assets/stylesheets/site/common/base.css.saas
/app/assets/stylesheets/site/site/site1.css.saas
/app/assets/stylesheets/site/site/site2.css.saas
...

问题是,当我访问使用site1.css样式的页面时,我收到以下错误

Error compiling CSS asset
Sass::SyntaxError: File to import not found or unreadable: ../compass/css3/text-shadow.
Load path: /app
  (in /app/app/assets/stylesheets/site/common/base.css.sass)

  /app/app/assets/stylesheets/site/common/base.css.sass)

错误引用的行是

/app/assets/stylesheets/site/common/base.css.sass
@import "../compass/css3/text-shadow"

我尝试了"../compass/css3/text-shadow""compass/css3/text-shadow"。在这两种情况下我都得到了同样的错误。

知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

解决。

我需要在production.rb文件上指定要编译的其他文件

config.assets.precompile +=
  Dir["#{Rails.root}/app/assets/stylesheets/site/site/*.*"].collect {|s| "site/" + File.basename(s).gsub(/.scss|.sass/, '') }

现在工作正常。