J'ai propre nouvelle application Rails 4 avec Gemfile:
#default gems
gem 'compass-Rails'
gem 'zurb-foundation'
gem 'thin'
avec 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);
}
Et j'ai cette erreur:
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 n'est-il pas actuellement pris en charge par compass-Rails
?
Compass a besoin de réécrire certaines parties clés afin de prendre en charge Rails 4. Il existe une branche temporaire que vous pouvez utiliser et qui a regroupé certains supports:
'gem "compass-Rails", github: "milgner/compass-Rails", ref: "1749c06f15dc4b058427e7969810457213647fb8"
Vous pouvez suivre https://github.com/Compass/compass-Rails/pull/59 pour les dernières mises à jour. </ Strike>
Mettre à jour:
Il existe maintenant une version en alpha.
gem "compass-Rails", "~> 2.0.alpha.0"
</ strike>
Mise à jour 2: Compass-Rails n'est plus en alpha.
Ajoutez ce qui suit à votre Gemfile et tapez bundle install
.
gem "compass-Rails", "~> 1.1.2"
J'ai fini par utiliser la version alpha suggérée par Sunny Juneja.
Mais pour que cela fonctionne, j'ai dû supprimer le groupe d'actifs de mon fichier gem:
# 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'
Il y a environ 18 heures, la branche stable de compass-Rails prend en charge Rails 4. Supprimez la chaîne de version "2.0.alpha.0" de compass-Rails dans votre Gemfile et exécutez bundle update
.
Voici l'historique des commits:
J'ai ajouté tous les fichiers compas à mon dossier de fournisseur et cela a fonctionné =), ce n'est peut-être pas l'option préférable plus longtemps = (.
Essaye ça:
gem 'sass-Rails'
gem 'compass-Rails', github: 'Compass/compass-Rails'
Assurez-vous également qu'ils ne sont PAS inclus dans votre groupe d'actifs, car celui-ci a été supprimé de Rails 4.0.
Ensuite, supprimez votre fichier Gemfile.lock
et régénérez-le à l'aide de la commande bundle
.
rm Gemfile.lock
bundle
Il semble qu'à ce moment-là (29/06/2013) compass-Rails ne supporte pas Rails 4. Quand je cours
Rails generate foundation:install
Je reçois le message d'erreur ci-dessous.
Unsupported Rails environment for compass