私は、Rails 3.0.x プロジェクトを成功させており、Gemfile に次の Gem のサブセットがあります。
gem "compass"
gem "haml"
gem "haml-rails"
gem "html5-boilerplate"
私は今日、Rails 3.1 にアップグレードしてすべての機能を維持しようとしましたが、そうするのに多くの問題がありました。実稼働モードで機能する構成がまだ見つからないため、現在開発モードで作業しています。
ここでは次のアドバイスに従いました。
- Railscast の「Rails 3.1 へのアップグレード」
production.rb
: いつものように非常によく、アセット パイプラインの構成を変更development.rb
および更新する方法を教えてくれました。application.rb
しかし、compass、sass、および html5-boilerplate には触れませんでした。 - 「Rails 3.1 で html-boilerplate をセットアップする」これは私にとって最適なものでしたが
ie_html
、プロダクション モードではこのメソッドを使用できないため、機能しません。Gemfile の変更を書き留めます - 「Rails 3.1、Compass、Sass、Blueprint を Heroku Cedar で動作させることができません」これはまったく機能しませんでした。コンパイルされたアセットに問題がありました。Compass と Html-Boilerplate の間には依存関係があり、 Html-Boilerplate は method のためにグローバルでなければならないため、すべてをグローバルにしようとしました
ie_html
。 group :assets
ブロック内の一部のジェムのみを使用しようとするたびに成功しませんでした。ほとんどの場合、compass と sass、または compass と html5-boilerplate の間の依存関係を満たすことができませんでした。
私の質問は次のとおりです。Haml、Sass、Compass、Html5-Boilerplate、そしてもちろん Rails 3.1 を一緒に使用できる有効な Gemfile はありますか?
新しい Gemfile は開発モードで動作しますが、本番モードでは動作しません:
gem "haml-rails"
group :assets do
gem 'sass-rails', " ~> 3.1.0"
gem 'coffee-rails', "~> 3.1.0"
gem 'uglifier'
gem 'compass', '~> 0.12.alpha.0'
gem "html5-boilerplate"
end
gem 'jquery-rails'
新しい Rails 3.1 アプリケーションを作成しようとして、そこに画像リソースを追加しました。すべてが正常に機能しているため、開発モードと本番モードに違いはありません。移行したアプリケーションでは、次の状態になりました。
- 開発モードでうまく機能します。
- 本番環境での問題を回避するために、html5-boilerplate の一部を無効にします。
- 実動モードでプリコンパイル済みイメージをまだ検出していません。