web-dev-qa-db-ja.com

compass-RailsはRuby on Rails 4.0をサポートしていますか?

私はきれいな新しいRails Gemfileを備えた4つのアプリ:

#default gems
gem 'compass-Rails'
gem 'zurb-foundation'
gem 'thin'

style.scss:

@import "compass";
@import "foundation/variables";
$red: rgb(255,0,1);
$green: rgb(51,153,50);
$body-bg: #F4F4F4;
$body-font-color: #7B7B7B;
$primary-color: #999;
$secondary-color: #0CC;
$dark-color: #393939;
$block-container-border-color: rgb(218,218,218);
$block-container-shadow-color: rgb(208,208,208);
// main background
html{
  background:image-url('bckg.jpg');
}
body{
  width:1000px;
  margin:0 auto;
  @include box-shadow(0px 0px 32px -5px #000);
}

そして私はこのエラーを持っています:

Showing /Users/quatermain/Projects/Rails40/app/views/layouts/application.html.erb where line #18 raised:

File to import not found or unreadable: compass.
Load paths:
  /Users/quatermain/Projects/Rails40/app/assets/images
  /Users/quatermain/Projects/Rails40/app/assets/javascripts
  /Users/quatermain/Projects/Rails40/app/assets/stylesheets
  /Users/quatermain/Projects/Rails40/vendor/assets/javascripts
  /Users/quatermain/Projects/Rails40/vendor/assets/stylesheets
  /usr/local/rvm/gems/Ruby-1.9.3-p392/gems/turbolinks-1.2.0/lib/assets/javascripts
  /usr/local/rvm/gems/Ruby-1.9.3-p392/gems/jquery-Rails-3.0.1/vendor/assets/javascripts
  /usr/local/rvm/gems/Ruby-1.9.3-p392/gems/coffee-Rails-4.0.0/lib/assets/javascripts
  /usr/local/rvm/gems/Ruby-1.9.3-p392/gems/zurb-foundation-4.2.3/scss
  /usr/local/rvm/gems/Ruby-1.9.3-p392/gems/zurb-foundation-4.2.3/js
  (in /Users/quatermain/Projects/Rails40/app/assets/stylesheets/style.scss:5)

Rails 4は現在compass-Railsでサポートされていませんか?

29
quatermain

Rails 4.をサポートするために、Compassはいくつかの重要な部分を書き換える必要があります。いくつかのサポートをハッキングした一時ブランチが使用できます:

'gem "compass-Rails", github: "milgner/compass-Rails", ref: "1749c06f15dc4b058427e7969810457213647fb8"

最新のアップデートについては、 https://github.com/Compass/compass-Rails/pull/59 をフォローできます。

更新:

現在アルファ版があります。

gem "compass-Rails", "~> 2.0.alpha.0"

アップデート2:compass-Railsはアルファ版ではなくなりました。

以下をGemfileに追加し、bundle installと入力します。

gem "compass-Rails", "~> 1.1.2"
48
sunnyrjuneja

結局、Sunny Junejaによって提案されたアルファ版を使用してしまいました。

しかし、それを機能させるには、gemfileからassetsグループを削除する必要がありました。

# Not working:
group :assets do       # remove me olde line
   gem 'sass-Rails',   '~> 4.0.0'
   gem 'compass-Rails' # specify me version
end                    # remove me too, says aye

# Working:
gem 'sass-Rails',    '~> 4.0.0'
gem 'compass-Rails', '~> 2.0.alpha.0'
4
Gabriel Osorio

約18時間前の時点で、compass-Railsの安定ブランチはRails 4.をサポートしています。バージョン文字列 "2.0.alpha.0"をGemfileのcompass-Railsから削除し、bundle update

これがコミット履歴です:

https://github.com/Compass/compass-Rails/commits/stable

3
armchairdj

すべてのコンパスファイルをベンダーフォルダーに追加しましたが、機能しました=)。これは、はるかに長い=(。

0
OneChillDude

今回(2013年6月29日)現在、compass-RailsはRails 4.をサポートしていません。4を実行すると

Rails generate foundation:install

以下のエラーメッセージが表示されます。

Unsupported Rails environment for compass
0
Will