いくつかのKendo UIウィジェットを使用しようとしましたが、開発では問題なく動作します。しかし、アプリを Heroku にデプロイすると、その外観が劇的に変化します。
TreeView ウィジェットを使用してサンプル ページを作成しました。これは、開発中のレンダリング方法です。
そしてHerokuでの本番環境:
ご覧のとおり、リスト マーカー (ツリー マーカー?) がありません。
この問題はアセット パイプラインに関係しているのではないかと考えていrake assets:precompile
ますrake assets:clean
。しかし、私のBootstrapヘッダーは開発と本番の両方で問題なく機能するため、混乱します (ただしActionController::RoutingError (No route matches [GET] "/assets/Bootstrap/loading.gif")
、Heroku ログにはいくつかのエラーがあります)。
Gemfile :
source 'https://rubygems.org'
gem 'rails'
gem "ancestry"
gem "bootstrap-sass"
gem "will_paginate"
gem "bootstrap-will_paginate"
gem "truncate_html"
gem "slim-rails"
gem "kendoui-rails"
group :development, :test do
gem 'sqlite3'
gem 'rspec-rails'
gem "minitest"
platform :ruby do
gem 'therubyracer'
end
end
group :test do
gem 'capybara'
end
group :development do
gem "nifty-generators"
gem "annotate"
end
group :production do
gem 'pg'
end
group :assets do
gem 'sass-rails', '~> 3.2.3'
gem 'coffee-rails', '~> 3.2.1'
gem 'uglifier', '>= 1.0.3'
end
gem 'jquery-rails', '~> 2.1.3'
gem 'bcrypt-ruby', require: 'bcrypt'
development.rb :
config.cache_classes = false
config.whiny_nils = true
config.consider_all_requests_local = true
config.action_controller.perform_caching = false
config.action_mailer.raise_delivery_errors = false
config.active_support.deprecation = :log
config.action_dispatch.best_standards_support = :builtin
config.active_record.mass_assignment_sanitizer = :strict
config.active_record.auto_explain_threshold_in_seconds = 0.5
config.assets.compress = false
config.assets.debug = true
production.rb :
config.cache_classes = true
config.consider_all_requests_local = false
config.action_controller.perform_caching = true
config.serve_static_assets = false
config.assets.compress = true
config.assets.compile = false
config.assets.digest = true
config.i18n.fallbacks = true
config.active_support.deprecation = :notify
誰もそれを修正する方法を知っていますか? どんな助けでも大歓迎です。
更新 1。
コメントありがとうございます、ここに追加情報があります。
Heroku ログ:
2013-02-23T02:37:50+00:00 app[web.1]: Started GET "/environment_test/index" for 193.169.36.82 at 2013-02-23 02:37:50 +0000
2013-02-23T02:37:50+00:00 app[web.1]: Processing by EnvironmentTestController#index as HTML
2013-02-23T02:37:50+00:00 app[web.1]: Rendered environment_test/index.html.slim within layouts/application (23.3ms)
2013-02-23T02:37:50+00:00 app[web.1]: Rendered layouts/_header.slim (57.2ms)
2013-02-23T02:37:50+00:00 app[web.1]: Completed 200 OK in 159ms (Views: 158.7ms | ActiveRecord: 0.0ms)
2013-02-23T02:37:50+00:00 heroku[router]: at=info method=GET path=/environment_test/index host=biotriz.herokuapp.com fwd="193.169.36.82" dyno=web.1 queue=0 wait=2ms connect=20ms service=394ms status=200 bytes=1253
2013-02-23T02:37:50+00:00 heroku[router]: at=info method=GET path=/assets/application-43a283ce09b9af356379df3e89b8b1cc.css host=biotriz.herokuapp.com fwd="193.169.36.82" dyno=web.1 queue=0 wait=0ms connect=1ms service=10ms status=200 bytes=186674
2013-02-23T02:37:51+00:00 heroku[router]: at=info method=GET path=/assets/application-8ac08b06d5d57f91da7af9d1e1c345c0.js host=biotriz.herokuapp.com fwd="193.169.36.82" dyno=web.1 queue=0 wait=7ms connect=20ms service=64ms status=200 bytes=648803
2013-02-23T02:37:55+00:00 heroku[router]: at=info method=GET path=/favicon.ico host=biotriz.herokuapp.com fwd="193.169.36.82" dyno=web.1 queue=0 wait=0ms connect=0ms service=5ms status=200 bytes=0
2013-02-23T02:37:55+00:00 app[web.1]: Started GET "/environment_test/index.json" for 193.169.36.82 at 2013-02-23 02:37:55 +0000
2013-02-23T02:37:55+00:00 app[web.1]: Processing by EnvironmentTestController#index as JSON
2013-02-23T02:37:55+00:00 heroku[router]: at=info method=GET path=/assets/glyphicons-halflings-white-6cccd17a7aed91dbc0157d343c68c0d9.png host=biotriz.herokuapp.com fwd="193.169.36.82" dyno=web.1 queue=0 wait=0ms connect=3ms service=66ms status=200 bytes=8777
2013-02-23T02:37:55+00:00 app[web.1]: Completed 200 OK in 104ms (Views: 0.6ms | ActiveRecord: 31.9ms)
2013-02-23T02:37:55+00:00 app[web.1]: Started GET "/assets/Bootstrap/loading.gif" for 193.169.36.82 at 2013-02-23 02:37:55 +0000
2013-02-23T02:37:55+00:00 app[web.1]:
2013-02-23T02:37:55+00:00 app[web.1]: ActionController::RoutingError (No route matches [GET] "/assets/Bootstrap/loading.gif"):
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/actionpack-3.2.12/lib/action_dispatch/middleware/debug_exceptions.rb:21:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/actionpack-3.2.12/lib/action_dispatch/middleware/show_exceptions.rb:56:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/railties-3.2.12/lib/rails/rack/logger.rb:32:in `call_app'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/railties-3.2.12/lib/rails/rack/logger.rb:16:in `block in call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.12/lib/active_support/tagged_logging.rb:22:in `tagged'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/railties-3.2.12/lib/rails/rack/logger.rb:16:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/actionpack-3.2.12/lib/action_dispatch/middleware/request_id.rb:22:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-1.4.5/lib/rack/methodoverride.rb:21:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-1.4.5/lib/rack/runtime.rb:17:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.12/lib/active_support/cache/strategy/local_cache.rb:72:in `call'
2013-02-23T02:37:55+00:00 heroku[router]: at=info method=GET path=/assets/Bootstrap/loading.gif host=biotriz.herokuapp.com fwd="193.169.36.82" dyno=web.1 queue=0 wait=1ms connect=12ms service=56ms status=404 bytes=728
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-1.4.5/lib/rack/lock.rb:15:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/actionpack-3.2.12/lib/action_dispatch/middleware/static.rb:62:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-cache-1.2/lib/rack/cache/context.rb:136:in `forward'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-cache-1.2/lib/rack/cache/context.rb:245:in `fetch'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-cache-1.2/lib/rack/cache/context.rb:185:in `lookup'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-cache-1.2/lib/rack/cache/context.rb:66:in `call!'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-cache-1.2/lib/rack/cache/context.rb:51:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/railties-3.2.12/lib/rails/engine.rb:479:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/railties-3.2.12/lib/rails/application.rb:223:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-1.4.5/lib/rack/content_length.rb:14:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/railties-3.2.12/lib/rails/rack/log_tailer.rb:17:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-1.4.5/lib/rack/handler/webrick.rb:59:in `service'
2013-02-23T02:37:55+00:00 app[web.1]: /usr/local/lib/ruby/1.9.1/webrick/httpserver.rb:111:in `service'
2013-02-23T02:37:55+00:00 app[web.1]: /usr/local/lib/ruby/1.9.1/webrick/httpserver.rb:70:in `run'
2013-02-23T02:37:55+00:00 app[web.1]: /usr/local/lib/ruby/1.9.1/webrick/server.rb:183:in `block in start_thread'
2013-02-23T02:37:55+00:00 app[web.1]:
2013-02-23T02:37:55+00:00 app[web.1]:
2013-02-23T02:37:55+00:00 heroku[router]: at=info method=GET path=/environment_test/index.json host=biotriz.herokuapp.com fwd="193.169.36.82" dyno=web.1 queue=0 wait=6ms connect=16ms service=121ms status=200 bytes=390
2013-02-23T02:37:55+00:00 app[web.1]: Started GET "/assets/Bootstrap/sprite.png" for 193.169.36.82 at 2013-02-23 02:37:55 +0000
2013-02-23T02:37:55+00:00 app[web.1]:
2013-02-23T02:37:55+00:00 app[web.1]: ActionController::RoutingError (No route matches [GET] "/assets/Bootstrap/sprite.png"):
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/actionpack-3.2.12/lib/action_dispatch/middleware/debug_exceptions.rb:21:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/actionpack-3.2.12/lib/action_dispatch/middleware/show_exceptions.rb:56:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/railties-3.2.12/lib/rails/rack/logger.rb:32:in `call_app'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/railties-3.2.12/lib/rails/rack/logger.rb:16:in `block in call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.12/lib/active_support/tagged_logging.rb:22:in `tagged'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/railties-3.2.12/lib/rails/rack/logger.rb:16:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/actionpack-3.2.12/lib/action_dispatch/middleware/request_id.rb:22:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-1.4.5/lib/rack/methodoverride.rb:21:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-1.4.5/lib/rack/runtime.rb:17:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.12/lib/active_support/cache/strategy/local_cache.rb:72:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-1.4.5/lib/rack/lock.rb:15:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/actionpack-3.2.12/lib/action_dispatch/middleware/static.rb:62:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-cache-1.2/lib/rack/cache/context.rb:136:in `forward'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-cache-1.2/lib/rack/cache/context.rb:245:in `fetch'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-cache-1.2/lib/rack/cache/context.rb:185:in `lookup'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-cache-1.2/lib/rack/cache/context.rb:66:in `call!'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-cache-1.2/lib/rack/cache/context.rb:51:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/railties-3.2.12/lib/rails/engine.rb:479:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/railties-3.2.12/lib/rails/application.rb:223:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-1.4.5/lib/rack/content_length.rb:14:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/railties-3.2.12/lib/rails/rack/log_tailer.rb:17:in `call'
2013-02-23T02:37:55+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-1.4.5/lib/rack/handler/webrick.rb:59:in `service'
2013-02-23T02:37:55+00:00 app[web.1]: /usr/local/lib/ruby/1.9.1/webrick/httpserver.rb:111:in `service'
2013-02-23T02:37:55+00:00 app[web.1]: /usr/local/lib/ruby/1.9.1/webrick/httpserver.rb:70:in `run'
2013-02-23T02:37:55+00:00 app[web.1]: /usr/local/lib/ruby/1.9.1/webrick/server.rb:183:in `block in start_thread'
2013-02-23T02:37:55+00:00 app[web.1]:
2013-02-23T02:37:55+00:00 app[web.1]:
2013-02-23T02:37:55+00:00 heroku[router]: at=info method=GET path=/assets/Bootstrap/sprite.png host=biotriz.herokuapp.com fwd="193.169.36.82" dyno=web.1 queue=0 wait=0ms connect=1ms service=7ms status=404 bytes=728
2013-02-23T02:38:19+00:00 app[web.1]: Started GET "/environment_test/index.json?id=33" for 193.169.36.82 at 2013-02-23 02:38:19 +0000
2013-02-23T02:38:19+00:00 app[web.1]: Processing by EnvironmentTestController#index as JSON
2013-02-23T02:38:19+00:00 app[web.1]: Parameters: {"id"=>"33"}
2013-02-23T02:38:19+00:00 app[web.1]: Completed 200 OK in 17ms (Views: 0.4ms | ActiveRecord: 14.0ms)
2013-02-23T02:38:19+00:00 heroku[router]: at=info method=GET path=/environment_test/index.json?id=33 host=biotriz.herokuapp.com fwd="193.169.36.82" dyno=web.1 queue=0 wait=0ms connect=1ms service=26ms status=200 bytes=266
私のマニフェスト CSS ファイル ( application.css )には、剣道関連の 2 つの CSS ファイルが含まれています。バージョン)。
ちなみにgemのvendor
ディレクトリは以下のような構造になっています。kendoui-rails
vendor
└── assets
├── javascripts
│ └── ...
└── stylesheets
└── kendo
├── Bootstrap
│ ├── editor.png
│ ├── imagebrowser.png
│ ├── loading.gif
│ ├── loading-image.gif
│ ├── slider-h.gif
│ ├── slider-v.gif
│ └── sprite.png
├── ... # Some other theme-specific dirs
├── kendo.bootstrap.min.css
├── kendo.common.min.css
└── ... # Some other theme-specific CSS's
ファイルkendo.bootstrap.min.cssには、本番環境では表示されない (ディレクトリには存在する)画像 (url('Bootstrap/sprite.png')
および) を参照するコードが含まれているため、Chris Rueber は正しかったと思います。それで、どうすればそれを修正できますか?url('Bootstrap/loading.gif')
Bootstrap