bootstrap on Rails4bootstrap-sass
を使用してセットアップしようとしていますが、この有名なエラーが発生します。
Sprockets::FileNotFound - couldn't find file 'bootstrap'
(in app/assets/javascripts/application.js:16):
私は以下を試しました:
Twitter/bootstrap
in application.js
gem 'bootstrap-sass', '~> 3.1.0'
はグループ資産外です私は他の投稿からさまざまな提案をすることに多くの時間を費やしてきました。これを体系的にデバッグするにはどうすればよいですか、bootstrap-sassを設定する方法は?
p.s:また、運が悪ければTwitter-bootstrap-Rails
を動作させようとしています。
ここにいくつかのファイルがあります
application.js
//= require jquery
//= require jquery_ujs
//= require js-routes
//= require bootstrap
//= require_tree .
//= require bootstrap-slider
application.css.scss
*= require jquery.ui.core
*= require jquery.ui.theme
*= require_self
*= require bootstrap-slider
*= require_tree .
*= stub active_admin
*/
@import "bootstrap";
Gemfile
source 'https://rubygems.org'
Ruby '2.0.0'
gem 'Rails', '4.0.0'
gem 'sass-Rails'
gem 'coffee-Rails', git: 'git://github.com/Rails/coffee-Rails.git'
gem 'uglifier', '>= 1.0.3'
gem 'jquery-ui-Rails'
gem 'font-awesome-sass'
gem 'less-Rails'
gem 'therubyracer', :platform=>:Ruby
#gem 'Twitter-bootstrap-Rails'
gem 'jquery-Rails'
#gem 'jquery_mobile_Rails'
gem 'js-routes'
gem 'cancan'
gem 'devise'
gem 'figaro'
gem 'haml-Rails'
gem 'pg'
gem 'rolify'
gem 'sendgrid'
gem 'simple_form'
gem 'thin'
gem 'rake'
#To use db for storing cookies instead cookie-store
gem 'activerecord-session_store', github: 'Rails/activerecord-session_store'
group :development do
gem 'better_errors'
#gem 'binding_of_caller', :platforms=>[:mri_19, :rbx]
#Commenting out platforms part, because may be that's stopping this to be used on the dev machine'
gem 'binding_of_caller'
gem 'guard-bundler'
gem 'guard-Rails'
gem 'guard-rspec'
gem 'html2haml'
gem 'quiet_assets'
gem 'rb-fchange', :require=>false
gem 'rb-fsevent', :require=>false
gem 'rb-inotify', :require=>false
# Required with Rails panel chrome extension. This Gem should come after better_errors gem
gem 'meta_request'
end
group :development, :test do
gem 'factory_girl_Rails'
gem 'rspec-Rails'
gem 'pry-byebug'
gem 'pry-stack_Explorer'
gem 'pry-Rails'
gem 'pry-debugger'
end
group :test do
gem 'capybara'
gem 'database_cleaner'
gem 'email_spec'
end
group :production do
gem 'Rails_12factor'
end
gem 'high_voltage'
#Linkedin Logins
gem "linkedin"
gem "omniauth"
gem "omniauth-linkedin"
gem "omniauth-facebook"
#postgres use hstore in active record
#gem 'activerecord-postgres-hstore'
gem 'state_machine'
gem "Ruby-graphviz"
#payments
#gem 'stripe',:git => 'https://github.com/stripe/stripe-Ruby'
#gem 'anjlab-bootstrap-Rails', :require => 'bootstrap-Rails', :github => 'anjlab/bootstrap-Rails'
gem 'newrelic_rpm'
gem 'pgbackups-archive'
gem 'pg_search'
gem 'acts-as-taggable-on'
#gem 'activeadmin' , github: 'gregbell/active_admin'
gem "activeadmin", git: "https://github.com/gregbell/active_admin"
gem 'kaminari'
gem 'bootstrap-slider-Rails'
gem 'bootstrap-sass', '~> 3.1.0'
Bootstrap Gemのインストール
1。) Bootstrap Gem:
gem 'bootstrap-sass'
2。) Application.cssファイルを理解するapp/assets/stylesheets/application.css
Application.cssは、/stylesheets
ディレクトリ内の他のすべてのファイルを取得し、アプリの実行時にそれらを結合します。
。)新しいSCSSファイルを作成します(app/assets/stylesheets/bootstrap_and_customization.css.scss)
@import 'bootstrap';
4。) BootstrapのJavaScriptが必要
...
//= require jquery
//= require jquery_ujs
//= require bootstrap <--
//= require turbolinks
//= require_tree .
5。) Rails Assets
group :production do
gem 'Rails_12factor'
end
6。)サーバーのバンドルインストールと再起動
それはそれであるはずです!
私のプロジェクトの1つ(Rails 4.1)にbootstrapを直接含める必要がありました(sassではありません))多分それはヒントを与えるでしょうSaasバージョンを機能させるための手順は次のとおりです。bootstrapを直接含める手順は次のとおりです。
ファイルを作成しますRails.root/vendor/assets/javascripts/bootstrap.js次のような内容のファイル:
//= require ../bootstrap/js/bootstrap.js
アイコンを機能させるための最も重要な部分です。 Glyphicons Halflingsフォントでは、フォントファイルのURLを上書きする必要があります。また、asset_pathヘルパーを使用する必要があります。したがって、ファイルを作成しますRails.root/vendor/assets/stylesheets/bootstrap.css.erbこのような内容のファイル。
/*
=require ../bootstrap/css/bootstrap.css
*/
@font-face {
font-family: 'Glyphicons Halflings';
src: url("<%= asset_path 'glyphicons-halflings-regular.eot' %>");
src: url("<%= asset_path 'glyphicons-halflings-regular.eot?#iefix' %>") format('embedded-opentype'), url("<%= asset_path 'glyphicons-halflings-regular.woff2' %>") format('woff2'), url("<%= asset_url 'glyphicons-halflings-regular.woff' %>") format('woff'), url("<%= asset_path 'glyphicons-halflings-regular.ttf' %>") format('truetype'), url("<%= asset_path 'glyphicons-halflings-regular.svg#glyphicons_halflingsregular' %>") format('svg');
}
application.js
//= require bootstrap
application.css
*= require bootstrap
config.assets.paths << Rails.root.join("vendor", "assets", "bootstrap", "fonts")
config.assets.precompile += %w( *.eot *.svg *.ttf *.woff *.woff2 )
その後Rails_ENV = production rake Assets:precompileは、フォントファイルが認識され、パブリックアセットフォルダーにコピーされたことを示します。
次に、本番環境で機能するかどうかをテストするには、静的アセットの提供を有効にします(production.rb:config.serve_static_assets = true)およびRails_ENV = production Rails s
まったく同じエラーが発生しました。解決策は次のように変更することでした。
config/environments/production.rb
この線
config.serve_static_assets = false
に
config.serve_static_assets = true
私はこの行が何をするのか正確にはわかりませんが、私のワークチームはプロジェクトで同じ問題を抱えていて、彼らはこの行を変更し、それは機能しました。
ホストされたCDNからbootstrap
%link{href: "//netdna.bootstrapcdn.com/bootstrap/3.1.0/css/bootstrap.min.css", rel: "stylesheet"}/
%link{href: "//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap-glyphicons.css" , rel: "stylesheet"}/
%link{href: "//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css", rel: "stylesheet"}/
gemfileに追加
gem'font-awesome-Rails '
バンドルインストールを行う
application.cssに追加
* =フォントが必要-素晴らしい
そして、Railsサーバーを再起動します。
私にとっての修正は2つの部分でした...最初に私の正しいリスト...しかしリストだけでは修正ではありませんでした!
gem 'sass-Rails', '~> 5.0'
gem 'bootstrap-sass', '~> 3.3.0'
gem 'uglifier', '>= 1.3.0'
gem 'coffee-Rails', '~> 4.1.0'
次に、gemfile.Lockの問題が発生しました...他の誰かがファイルをロードできず、CDNを使用したくない場合... gemfile.Lockをチェックして、gemfileからコンパイルされたバージョンを確認してください(1つはdevとして入力され、もう1つはフレームワークによって実際に実行されるものです。gemfile.lockを変更しようとすると問題が発生します)。
Gemfileロックを解決するには... gemfileとgemfile.Lockを閉じます
gem install <name of gemfile>
」をやりました。次に、gemfileとgemfile.Lockを開いて結果を確認します。これらのそれぞれに必要なすべての構成bootstrapなど)を実行する必要があることに注意してください。Rails assets:precompile
を実行しても問題はありません。
注:Rails Assets:precompileはRails 5コマンドです。
私は同じ問題を抱えていました:タイプ 'application/javascript'のファイル 'bootstrap-sprockets'が見つかりませんでした唯一の解決策はGemfilegem'sass-Rails '、'〜> 5.0 'でコメントオフし、代わりにgem'を追加することでしたsass-Rails '、'> = 3.2 '
これが他のメンバーに役立つことを願っています