twitter-bootstrap-railsをサブディレクトリで動かす

twitter-bootstrap-railsをサブディレクトリで動かすとアイコンの読み込み先にサブディレクトリが含まれないので、やったことのメモ。


  • app/assets/stylesheets/bootstrap_overrides.css.lessのリネーム
bootstrap_overrides.css.less を bootstrap_overrides.css.less.erb にリネーム

  • bootstrap_overrides.css.less.erbを更新
@import "twitter/bootstrap/responsive";
// Set the correct sprite paths
@iconSpriteAssetPath: asset-path('/twitter/bootstrap/glyphicons-halflings.png');
@iconSpritePath: `"<%= ActionController::Base.config.relative_url_root %>" + @{iconSpriteAssetPath}.replace('"', '')`;
@iconWhiteSpriteAssetPath: asset-path('/twitter/bootstrap/glyphicons-halflings-white.png');
@iconWhiteSpritePath: `"<%= ActionController::Base.config.relative_url_root %>" + @{iconWhiteSpriteAssetPath}.replace('"', '')`;

// Set the Font Awesome (Font Awesome is default. You can disable by commenting below lines)
// Note: If you use asset_path() here, your compiled boostrap_and_overrides.css will not
//       have the proper paths. So for now we use the absolute path.
@fontAwesomeEotPath: '<%= ActionController::Base.config.relative_url_root %>/assets/fontawesome-webfont.eot';
@fontAwesomeWoffPath: '<%= ActionController::Base.config.relative_url_root %>/assets/fontawesome-webfont.woff';
@fontAwesomeTtfPath: '<%= ActionController::Base.config.relative_url_root %>/assets/fontawesome-webfont.ttf';
@fontAwesomeSvgPath: '<%= ActionController::Base.config.relative_url_root %>/assets/fontawesome-webfont.svg';

これで、rake assets:precompileするときに以下のようにすれば、サブディレクトリが追加される。
RAILS_RELATIVE_URL_ROOT="/sub" bundle exec rake assets:precompile


  • ruby 1.9.3p194
  • rails 3.2.6
  • twitter-bootstrap-rails 2.1.0


コメント

このブログの人気の投稿

2019年4月 やってるお金の投資

Rails Devise認証のカスタマイズメモ

One Netbook One Mix 2S + IPEGA PG-9083でニンテンドースイッチもどき