the rails present not images asset ruby-on-rails asset-pipeline

ruby-on-rails - rails - the asset is not present in the asset pipeline



blueprint/screen.css no está precompilado (4)

Agregué una referencia a las hojas de estilo del plano en mi archivo application.css. De esta manera, no tengo que cambiar el diseño para modificar las hojas de estilo, solo necesito modificar el archivo application.css, ejecutar los rake assets:precompile y reiniciar el servidor web (si hacemos un código o similar).

Mi application.css actualmente se ve así:

/* * This is a manifest file that''ll automatically include all the stylesheets available in this directory * and any sub-directories. You''re free to add application-wide styles to this file and they''ll appear at * the top of the compiled file, but it''s generally better to create a new file per style scope. *= require_self *= require_tree ./blueprint *= require_tree . */

He seguido el excelente tutorial RoR de Michael Hartl, pero estoy usando RoR 3.1. Soy un novato en RoR 3.1 y necesito ayuda relacionada con la canalización de activos. Aquí está mi problema:

Antes de continuar con la sección 5.3, pensé que me gustaría presionar a Heroku y ver cómo se desarrollan las cosas. Para mi sorpresa, "OBTENER /" da como resultado el error 500. Todo salió bien en mi entorno de desarrollo local. Luego intenté ejecutar mi sample_app local en producción-entorno ( rails s -e production ). Mismo resultado, error 500:

Sprockets::Helpers::RailsHelper::AssetPaths::AssetNotPrecompiledError in Pages#home Showing /Users/john/Projects/sample_app/app/views/layouts/_stylesheets.html.erb where line #4 raised: blueprint/screen.css isn''t precompiled

Información de apoyo:

  1. Puse el directorio CSS de blueprint en proveedor / assets / stylesheets.
  2. Seguí el consejo de Michael sobre la sección 13.1.4 y tengo lo siguiente como mi aplicación / vistas / diseños / aplicación.html.erb:

    <!DOCTYPE html> <html> <head> <title><%= title %></title> <%= render ''layouts/stylesheets'' %> <%= stylesheet_link_tag "application" %> <%= javascript_include_tag "application" %> <%= csrf_meta_tags %> </head> <body> <div class="container"> <%= render ''layouts/header'' %> <section class="round"> <%= yield %> </section> <%= render ''layouts/footer'' %> </div> </body> </html>

  3. Contenido de la aplicación / views / layouts / _stylesheets.html.erb:

    <!--[if lt IE 9]> <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script> <![endif]--> <%= stylesheet_link_tag ''blueprint/screen'', :media => ''screen'' %> <%= stylesheet_link_tag ''blueprint/print'', :media => ''print'' %> <!--[if lt IE 8]><%= stylesheet_link_tag ''blueprint/ie'' %><![endif]-->

  4. He ejecutado los activos de ejecución del bundle: precompilación.

  5. Contenido de public / assets / manifest.yml:

    --- logo.png: logo-8e0a5ad292fbb13a2b07e68fa3995406.png rails.png: rails-bd9ad5a560b5a3a7be0808c5cd76a798.png blueprint/plugins/buttons/icons/cross.png: blueprint/plugins/buttons/icons/cross-2ebcd25368006d1b7b0c5b7d6b523ab3.png blueprint/plugins/buttons/icons/key.png: blueprint/plugins/buttons/icons/key-55237526967cbcab3e8cfb12f0029d88.png blueprint/plugins/buttons/icons/tick.png: blueprint/plugins/buttons/icons/tick-3f5fc1f52b505b93f88263e0432d25ce.png blueprint/plugins/buttons/readme.txt: blueprint/plugins/buttons/readme-3ff7f5dbb0288d71f70682fdbe9d86ec.txt blueprint/plugins/fancy-type/readme.txt: blueprint/plugins/fancy-type/readme-e7ed185d1a9f23256d418ab929b464d9.txt blueprint/plugins/link-icons/icons/doc.png: blueprint/plugins/link-icons/icons/doc-b071fd74b88ff38cda8360a53f493013.png blueprint/plugins/link-icons/icons/email.png: blueprint/plugins/link-icons/icons/email-28104e72b3418737d4b9b329c12ec358.png blueprint/plugins/link-icons/icons/external.png: blueprint/plugins/link-icons/icons/external-ee6d976ddb80125fafe1a33c6f8aed10.png blueprint/plugins/link-icons/icons/feed.png: blueprint/plugins/link-icons/icons/feed-59bc8604661681639d25cb7015a32c38.png blueprint/plugins/link-icons/icons/im.png: blueprint/plugins/link-icons/icons/im-afeeb6e0b652c1edb1441bf0fb428596.png blueprint/plugins/link-icons/icons/lock.png: blueprint/plugins/link-icons/icons/lock-d73c4b3b57ce72cb6dbd8b265507ff75.png blueprint/plugins/link-icons/icons/pdf.png: blueprint/plugins/link-icons/icons/pdf-c4c543e5103a8516839a7846b91e1ac4.png blueprint/plugins/link-icons/icons/visited.png: blueprint/plugins/link-icons/icons/visited-fb2370448bc4ea5d079e963a8c0d900b.png blueprint/plugins/link-icons/icons/xls.png: blueprint/plugins/link-icons/icons/xls-5399729cd31dffc492a04b3805cd0be1.png blueprint/plugins/link-icons/readme.txt: blueprint/plugins/link-icons/readme-42c02030199cd36a671d4b623cb4dc36.txt blueprint/plugins/rtl/readme.txt: blueprint/plugins/rtl/readme-8d11bf76e19fb3fc7dbc6c2ddb54b92d.txt blueprint/src/grid.png: blueprint/src/grid-973add038ed86febca85f03e8b35b94a.png jquery-ui.min.js: jquery-ui-7e33882a28fc84ad0e0e47e46cbf901c.min.js jquery.min.js: jquery-8a50feed8d29566738ad005e19fe1c2d.min.js application.js: application-a552e1db33b8be6a42eedf1261916f3c.js application.css: application-214e0c0742f20b334e8a7776e0a4c71d.css

  6. No veo blueprint / screen.css en manifest.yml.

¿Qué me estoy perdiendo?


De http://guides.rubyonrails.org/asset_pipeline.html#precompiling-assets

Si tiene otros manifiestos o hojas de estilo individuales y archivos de JavaScript para incluir, puede agregarlos a la matriz de precompilación

Esto significa que en su config / environments / production.rb, establece

config.assets.precompile += %w( blueprint/screen.css blueprint/print.css )

o un catchall:

config.assets.precompile += %w( *.css *.js )


Desde mi propia experiencia con este problema, donde también estaba pasando por el excelente tutorial RoR de Michael Hartl, había un paso que creo que podría quedar en este punto ...

bundle exec rake assets:precompile git add public/assets git commit -m "vendor compiled assets" git push heroku

Encontré esto here .


Es posible que desee precompilar sus activos en producción como se describe anteriormente. Y si usa capistrano, puede hacerlo después de la actualización del código:

require ''bundler/capistrano'' after ''deploy:update_code'' do run "cd #{release_path}; RAILS_ENV=#{rails_env} bundle exec rake assets:precompile" end