私は検索して検索しましたが、Rails 3.1でコンパスを使用するには、Gemfileを次のように編集するだけで済みました。
gem 'compass', :git => 'https://github.com/chriseppstein/compass.git', :branch => 'Rails31'
gem 'sass-Rails', "~> 3.1.0.rc"
はい私はそれを理解していますが、次に何をしますか?私が見たすべてのチュートリアルはそれだけを言っています、特定のフォークを使用してください。しかし、Rails 3.1。
これは私がしました:
$ compass init Rails . --syntax sass
directory ./app/stylesheets/
create ./config/compass.rb
create ./app/stylesheets/screen.sass
create ./app/stylesheets/print.sass
create ./app/stylesheets/ie.sass
そして、3.1は現在アセットを使用していたので、これらのファイルをすべて3.1に転送しました。また、compass-960プラグインを使用していますが、どこに必要ですか? require 960でcompass.rbを追加しようとしましたが、html5-boilerplateが必要ですが、それでもエラーが発生し続けます。
Error compiling asset application.css:
NoMethodError: undefined method `Error' for Compass:Module
(in /Users/eumir/Rails_apps/kiseki/app/assets/stylesheets/screen.sass)
NoMethodError (undefined method `Error' for Compass:Module
(in /Users/eumir/Rails_apps/kiseki/app/assets/stylesheets/screen.sass)):
私はコンパスをコンパイルしてみました、そしてそれは私にこれを与えました:
$ compass compileコンパイルするものはありません。新しいプロジェクトを開始しようとしている場合は、ディレクトリ引数を省略しています。 「compass -h」を実行すると、ヘルプが表示されます。
すでに述べたように、compass.rbはすでに編集しているため、これをどのように行うかについてはまだ困惑しています。何か助けは?
他の回答のソリューションは、Compassの最新バージョンv0.12で非推奨になりました。これには、Railsアプリで動作するアダプターが必要です。Compassの作者であるChris Eppsteinは、インストール手順を示していますgithub上:
https://github.com/compass/compass-Rails
このアダプタはRailsバージョン2.3以降をサポートしています)
[〜#〜] update [〜#〜]:より良い方法があるようです!
ソース: http://spin.atomicobject.com/2011/07/12/sass-sprockets-compass-with-Rails-3-1/
PDATE 2(2011年12月2日):Compassの作成者であるChris Eppsteinが、コンパスとRails 3.1を統合する方法のGithub Gistを投稿しました: https: //Gist.github.com/1184843
Livereloadを使用すると、コンパイル時の速度が大幅に向上することに気付いたので、今ではこの方法を好みます。
私の方法:
(現在は非推奨と考えていますが、場合によっては役立つ可能性があるため、参照用としてここに示します:)
まず、Gemfileに次を追加します。
gem "compass", "~> 0.12.alpha.0"
そして、実行することを忘れないでください
bundle update
次に、config/application.rbで:
config.generators.stylesheet_engine = :sass
Application.css.scssの名前をapplication.css.sassに変更するか、作成して、その内容を次のように置き換えます。
@import compass
@import _blueprint
(スタイルシートの先頭に新しいRails 3.1マニフェストコードを残したい場合は、「/ * * /」コメントをsass-syntaxバージョン「//」で置き換える必要があります。各行の始まり)
次に、コンパスとブループリントのミックスインが機能するかどうかをテストするために、同じファイルapplication.css.sassにコードを追加します。
@import compass
@import _blueprint
body
background: black
+linear-gradient(color-stops(white, black))
+column(5)
Railsサーバーを
bundle exec Rails server
ブラウザにアプリをロードし、 にアクセスしますhttp:// localhost:3000/assets/application.css
すべてがうまくいけば、コンパイルされたコードが表示されるはずです。
ソース:
http://blog.pixarea.com/2011/07/using-compass-blueprint-semantic-and-sass-syntax-in-Rails-3-1/
コンパスユーザーグループのPeter Gumesonが、この問題の修正を指摘しました。
https://groups.google.com/forum/#!msg/compass-users/mU5HBt8TCIg/2Rt7iSESTSAJ
これが彼のメッセージです。
こんにちは一団。このgithubの問題が役立つかもしれません。 https://github.com/sporkd/compass-html5-boilerplate/issues/19
今はEdgeでほぼすべてを実行しています。したがって、私のgemfileは次のようになります。
gem 'Rails', :git => 'git://github.com/Rails/rails.git' gem 'sass-Rails', '~> 3.1.0.rc2' gem 'haml', :git => 'git://github.com/nex3/haml.git' gem 'haml-Rails' gem "compass", :git => "git://github.com/chriseppstein/compass.git", :tag => "0.12.alpha.0" gem 'compass-html5', :git => 'git://github.com/sporkd/compass-html5.git'
私はRailsジェネレーターに今取り組んでいるので、それほど遠くないはずです。しかし、これで少なくともうまくいくはずです。
ピーター
* choonkeatによると、変更されたブランチ
コンパスディレクトリをダウンロードしてvendor/assets/stylesheets
にダンプできるので、ディレクトリ構造はvendor/assets/stylesheets/compass
になります。次に、メインアプリケーションのスタイルシートに、必要なコンパスミックスインアスを含めます@include compass/reset;