2012-09-03 4 views
4

내 gemfile이 최근에 내 compass-rails gem을 업그레이드했습니다. 나는 다음과 같은 오류 받기 시작했다 (단에게 Heroku에 생산 - 로컬 잘 작동), 그리고 시간 동안 붙어되었습니다나침반 레일에 보석이 달려 있지 않습니까?

Completed 500 Internal Server Error in 14284ms 
2012-09-03T20:53:25+00:00 app[web.1]: 
2012-09-03T20:53:25+00:00 app[web.1]: ActionView::Template::Error (File to import not found or unreadable: compass/css3. 
2012-09-03T20:53:25+00:00 app[web.1]: Load path: Sass::Rails::Importer(/app/app/assets/stylesheets/application.css.scss) 

내가 문제의 일부는 사실 내/응용 프로그램/응용 프로그램을 거짓말을 생각합니다/여기에 경로에 나타납니다 -하지만 난 이해가 안되는 이유. 아래의 나침반 설정을 "assets/stylesheets"으로 변경하면 추적 오류에서/app/app /가 계속 표시됩니다.

production.rb :

# Don't fallback to assets pipeline if a precompiled asset is missed 
    config.assets.compile = false 

compass.rb 내 application.css.scss 파일에서

# Require any additional compass plugins here. 
project_type = :rails 
sass_dir = "app/assets/stylesheets" 

Gemfile

group :assets do 
    gem 'sass-rails' 
    gem 'coffee-rails' 
    gem 'uglifier', '1.2.4' 
    gem 'yui-compressor', '0.9.6' 
    gem 'compass-rails' 
end 

:

@import "compass/css3"; 

나는 지금까지 행운없이 찾을 수있는 모든 해결책을 시도 해왔다.

뭐가 튀어 나와 있나?

답변

0

나는 내 레일을 3.2+로 업그레이드하고 나침반 레일을 자산 그룹 외부로 이동시켜 작동하게했습니다. 나는 그것이 왜 효과가 있는지 정말로 알지 못한다. 그러나 트릭을하는 것처럼 보였다.

5

예 : 나침반 레일을 자산 밖으로 이동하는 것은 효과가 있지만 이상적인 솔루션은 아닙니다.

는 Heroku가에 푸시의 출력을 통해 확인 나는

Preparing app for Rails asset pipeline 
Running: rake assets:precompile 
rake aborted! 

을 발견하지만이 솔루션은 자산을 사전 컴파일 할 때 DB를 초기화하지 않는 것입니다

RAILS_ENV=production rake assets:precompile 

로컬로 컴파일된다. 설정/application.rb에서 :

config.assets.initialize_on_precompile = false 

나침반 레일 프로젝트에서이 문제를 참조하십시오

https://github.com/Compass/compass-rails/issues/19

+2

에서 나침반 레일을 이동하는 이유 : Heroku가가 노력하고 있기 때문에 자산하는 일이다 'rake assets : precompile'이 실패했기 때문에 즉시 스타일 시트를 컴파일하십시오. 그러나 Rimian의 솔루션은 사전 컴파일 작업을 수행하고 나침반 레일은 반드시 assets 그룹에 남아 있어야합니다. –

관련 문제