1

私はRailsアプリを持っています.cssであり、jsリンクはローカルで正常に動作します.

    <link href="assets/bootstrap.css" rel="stylesheet">
    <link href="assets/bootstrap-responsive.css" rel="stylesheet">
    <link href="assets/font-awesome.css" rel="stylesheet">
    <link href="assets/bootswatch.css" rel="stylesheet">

私が見つけたのはこのHeroku Guideだけでした。アセットパイプラインのことについてとても混乱しています! 私もこのコマンドを実行しました:

bundle exec rake assets:precompile

ガイドに記載されているように、パブリックディレクトリにいくつかのファイルを作成しました:

Heroku では、すべてがプレーンで、デザインも Css と JS も何もありません。

私が走っている間

Heroku ログ

これは、次のように、CSS および JS ファイルに対して重大な NO Route Match を取得するものです。

2013-06-10T10:06:28.184255+00:00 app[web.1]: ActionController::RoutingError ([GET] "/assetscv.png" に一致するルートはありません):

これは 1 行だけです。他のファイル用にさらに多くの行を取得し、事前に生成された loggs 行を取得します

助けていただければ幸いですありがとう!

PS:

私は試した

       <%= stylesheet_link_tag "bootstrap" %>
<%= stylesheet_link_tag "bootstrap-responsiv" %>
 <%= stylesheet_link_tag "bootswatch", "font-awesome.css" %>

たくさんのエラーが発生しましたが、heroku では申し訳ありませんが、何か問題が発生したと表示されます

4

1 に答える 1

5

application.rb(config/application.rb)内

    # Enable the asset pipeline
    config.assets.enabled = true

この後、production.rbファイル(config/environments/production.rb)で次のようにします

      # Settings specified here will take precedence over those in config/application.rb

      # Code is not reloaded between requests
      config.cache_classes = true

      # Full error reports are disabled and caching is turned on
      config.consider_all_requests_local       = false
      config.action_controller.perform_caching = true

      # Disable Rails's static asset server (Apache or nginx will already do this)
      #config.serve_static_assets = true

      # Compress JavaScripts and CSS
      config.assets.compress = true

      # Don't fallback to assets pipeline if a precompiled asset is missed
      config.assets.compile = false

      # Generate digests for assets URLs
      config.assets.digest = true

次に、次のようにすべての js と css を含める必要があります。

     config.assets.precompile += %w(jquery.js jquery_ujs.js PIE.js check_list.js dom-drag.js jquery-1.4.2.min.js jquery-1.7.1.min.js jquery-1.8.3.js jquery-ui.js jquery.accordion.js jquery.corner.js jquery.countdown.js jquery.dimensions.js jquery.masonry.min.js jquery.tinycarousel.min.js jquery.validationEngine-en.js jquery.validationEngine.js questionnaire.js prototype.js users.js)

     config.assets.precompile += %w(ie7.css ie8.css about_us.css admin_menu.css blog.css default.ultimate.css designer_directory.css designer_directorynew.css drop.css greenstore.css menu.css MenuMatic_dev.css message_view.css product.css setting1.css style1.css styles.css validationEngine.jquery.css)

その後、このコマンドを使用してプリコンパイルします

     $ RAILS_ENV=production bundle exec rake assets:precompile

それで$ heroku restart

それはうまくいくはずです。

詳細については、http://guides.rubyonrails.org/asset_pipeline.htmlを参照してください。

于 2013-06-10T11:32:23.210 に答える