usando canalización de activos e imágenes/públicas con jruby y warbler

Estoy trabajando en una aplicación RoR que se implementa como un archivo war usando warbler. Antes de mi participación, las pocas imágenes en la aplicación estaban en la canalización de activos, pero mi función es presentar mapas resbaladizos y mosaicos de mapas de cosecha propia.

Debido a que los mosaicos ocupan mucho espacio y a que no cambiarán tan a menudo como la aplicación, la idea era simplemente servirlos desde public/images/tiles. El archivo de guerra para el resto de la aplicación se implementaría, luego los mosaicos se descomprimirían en el directorio adecuado.

Esto funciona bien en el modo de desarrollo, pero la implementación de Warbler usa una ruta de contexto y los mosaicos se vuelven 404 porque se encuentran en /contextpath/images, no en /images

No he trabajado en un entorno jruby antes y el resto del equipo está de vacaciones esta semana (¡ja!). La recomendación de Nick Sieger sobre el uso config.action_controller.asset_host at Warbler: ¿Dónde están mis imágenes? arruina las imágenes y CSS que funcionan a través de activos, por lo que agradecería cualquier otra sugerencia que permita que los activos y el público coexistan.

preguntado el 12 de junio de 12 a las 18:06

1 Respuestas

En production.rb prueba esta línea config.assets.precompile += %w( *.js *.scss *.coffee *.css ) entonces corre jruby -S rake assets:precompile. Recopilará todos sus activos en activos estáticos y Warbler los empaquetará en consecuencia, debería resolver su problema.

Otra cosa que puede verificar es cómo está apuntando a las imágenes en las Vistas. si quieres que se encuentren en /image debes escribir la ruta como <%= image_tag "\image" %>. Considere el seguimiento \.

Respondido el 24 de enero de 13 a las 12:01

Gracias funcionó para mí. Solo config.assets.precompile += %w( *.js *.scss *.coffee *.css ) es suficiente. - Mukesh Singh Rathaur

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.