ruby on rails - para - ActionController:: RoutingError(Ninguna ruta coincide con[GET] "/assets/images/control_top.png"): en los rieles 3.2.8
ruby on rails pdf (5)
En el entorno de producción, Rails no será responsable del servicio de activos estáticos. Por lo tanto, está recibiendo este error.
Esto se controla mediante esta configuración en config / environment / production.rb en su aplicación:
config.serve_static_assets = false
Usted puede establecer a ese verdadero
o prueba esto
rake assets:precompile
comando (compila y copia imágenes, css y js desde app / asset a public /.
La imagen de fondo no se ha cargado en mi página de visualización, mostrando este error.
ActionController :: RoutingError (ninguna ruta coincide con [GET] "/assets/images/control_top.png")
¿Qué puedo hacer para resolver este problema?
Podría ayudar a alguien, probé todas las respuestas y olvidé lo más básico. Borrado del caché del navegador, una vez hecho, estaba listo para ir :)
Seguí usando el canal de activos, pero tuve que cambiar las URL codificadas que usé de la siguiente manera (para mi entorno de desarrollo):
Actualicé mi /config/application.rb para usar la canalización de activos:
config.assets.enabled = true
Cambié todas las urls de mis imágenes para que apunten a ''/assets/image_without_old_image_directory_name.jpg''
así, por ejemplo, mis imágenes solían estar en /public/images/xxx.jpg. Los moví a /app/assets/images/xxx.jpg. Cambié el img src de /images/xxx.jpg a /assets/xxx.jpg
Terminé sin tener que hacer la precompilación del activo, y simplemente eliminé todos los aspectos visibles del flujo de activos en / public y en / tmp, y simplemente funcionó (para el desarrollo).
Si actualiza a una nueva versión de Rails (Rails 4 y Rails 3.2.16 vienen a su mente), y de repente comienza a ver este error, es probable que su hoja de estilo apunte a la versión de caché sin huellas dactilares. Los archivos. Si está utilizando la canalización de activos, para aprovecharla, debe utilizar los nuevos ayudantes que apuntan a la versión de los archivos de huellas dactilares y en caché. Para hacerlo, deberás incrustar erb en tu archivo css o usar sass.
Incorrecto (usa sass):
.class
background: url(''asset.png'') no-repeat
Correcto (usa sass):
.class
background: image-url(''asset.png'') no-repeat
Para obtener más información, consulte aquí: http://guides.rubyonrails.org/asset_pipeline.html#coding-links-to-assets
tienes que ejecutar este comando
rake assets:precompile