2012-03-09 13 views
9

Tengo una aplicación Rails 3.1 y, por alguna razón, cuando cambio CSS, los cambios no se muestran. Hice bundle exec rake assets:precompile y me ayudó una vez, pero ahora estoy atrapado con el viejo CSS sin importar nada.Los recursos de los rieles no se actualizan

Respuesta

14

A medida que sus activos están precompilados que necesita para limpiarlos con la siguiente

bundle exec RAILS_ENV=development rake rails_group=assets assets:clean 
+0

hmm no ayudó ...? /Users/username/.rvm/rubies/ruby-1.9.3-p0/bin/ruby /Users/username/.rvm/gems/ruby-1.9.3-p0/bin/rake assets: clean: todos RAILS_ENV = producción RAILS_GROUPS = activos por cierto, el problema que mencioné aparece en el desarrollo ... – Stpn

+0

lo hizo varias veces y me ayudó ... ¡extraño, pero gracias!)) – Stpn

+0

¿Alguna posibilidad de que pueda decir cómo desactivar la precompilación de activos para el desarrollo de modo que sea posible ver los cambios realizados en .css inmediatamente? – Stpn

5

Es posible que desee para tratar de activos rastrillo: limpia y luego rastrillar activos: precompilación

+1

lo hizo ... nada ha cambiado (se está sirviendo css antiguos). – Stpn

+1

Cuando hice esto, noté en el error que estaba realizando la tarea de rake en 'rake assets: clean: all RAILS_ENV = production RAILS_GROUPS = assets' ... una vez que lo cambié a' development' ¡funcionó bien! :) Gracias. – RGB

3

para mí es sólo estaba borrando archivos compilados css/js del directorio público.

Resultó que otro desarrollador lo puso allí y no lo dejó saber a nadie.

+0

Tuve que hacer esto también, pero no es otro desarrollador, es el precompilador. – OneHoopyFrood

5

Para mi entorno de producción, tuve que combinar algunos de los pasos anteriores para volver a compilar mis activos.

primero tenía que hacer:

rake assets:clean 

Asegurarse de que yo estaba en el entorno adecuado

Luego que necesitaba para eliminar el directorio public/assets que crea la compilación previa (o simplemente el archivo que necesita fijar, application-<hash>.css por ejemplo)

Entonces, finalmente, volver a ejecutar

rake assets:precompile 

Y reiniciar el servidor Apache (yo uso de pasajeros con Apache, no han sido evaluados con Nginx)

0

En caso de que alguna de Google futuras encuentran en este tema: Yo tenía el mismo problema en el entorno de prueba de un 4.2.8 aplicación Rails. Ninguna de las soluciones anteriores funcionó. El ajuste config.serve_static_files = false en config/environments/test.rb lo resolvió.

Tenga en cuenta que se trata de una solución temporal ya que provoca que todos los archivos de la carpeta public ya no se publiquen (incluidos 404.html, favicon.ico, robots.txt, etc.).

0

lo que funcionó para mí en los carriles, cromo, mac:

1 - En el terminal:

rake assets:clean 

2 - En el texto sublime o en el Finder:

Eliminar el "público> Activos "carpeta

3 - En el servidor terminal de lanzamiento localhost:

rails s 

4 - En cromo:

http://localhost:3000/ 

5 - Actualizar cromo caché claro si es pertinente:

cmd + shift + R 

Ahora debería ser capaz de actualizar los archivos CSS y ver cambios inmediatos en su servidor local acaba de recarga la página

NO RUN "activos" rastrillo: precompilación en el terminal porque va a crear la carpeta "activos" en la carpeta "público" y yo No podrá ver las actualizaciones de sus archivos CSS directamente en su servidor local

Cuestiones relacionadas