2011-12-19 10 views
39

Estaba compilando mi cartera de activos para mi entorno de producción y lo hice para todos mis entornos. ¿Cómo puedo unir mi canalización de activos para mi entorno de desarrollo?Uncompile Development Asset Pipeline

He comprobado mi entorno de configuración/desarrollo y no puedo encontrar una solución.

Gracias de antemano por cualquier ayuda ...

Respuesta

80

Para eliminar utilizan activos precompilados:

rake assets:clean 

Lo que esto hace es básicamente eliminar el directorio public/assets. Es posible que deba incluir la variable RAILS_ENV si necesita ejecutarla para un entorno determinado.

+10

Esto no funcionó para mí. Tuve que emitir 'RAILS_ENV = paquete de desarrollo exec rake assets: clean'. – Tass

+1

también, asegúrese de borrar la caché de su navegador. incluso después de reiniciar el servidor, las páginas publicadas pueden incluir una copia almacenada en caché del archivo compilado application.js – Michael

+3

. Ni funcionó aquí, tuvo que eliminar toda la carpeta 'public/assets'. –

5

Cuando se ejecuta la tarea de compilación localmente (en el equipo de desarrollo) los activos se compilan en el entorno de producción rieles, pero se escriben en la carpeta pública.

Esto significa que incluso cuando se ejecuta en modo de desarrollo utilizará los activos compilados en lugar de enviar solicitudes a la canalización. Esto es comportamiento normal: las solicitudes solo van a la interconexión si el archivo no existe en public/assets.

La tarea de compilación generalmente solo se debe utilizar al implementar y en la máquina remota (de producción).

Si ha compilado localmente, puede eliminar todos los archivos en la carpeta public/assets y el desarrollo se comportará como antes. Si marcó estos archivos en el control de fuente, tendrá que eliminarlos.

Una vez que se eliminan las cosas deberían funcionar bien. s Un último consejo: si se trata de una aplicación mejorada, compruebe la configuración de su configuración en el last section de la guía de canalización de activos de Rails.

+1

Al menos esta respuesta no sólo proporciona un código de respuesta de una línea, pero los intentos para explicar. – jasonleonhard

32

Trate de usar

rake assets:clobber 

trabajó para mí en los carriles 4

+0

¿Le explican por qué funciona? Hasta entonces, no puedo votar su respuesta y, francamente, pocas personas lo harán. Las respuestas de SO deberían ayudar a las personas a comprender el problema, no solo a proporcionar una línea de código. – jasonleonhard

+0

Elimina los activos compilados. También puede eliminarlos manualmente, esto es solo un atajo. – mattecalcio

0

para los carriles 5:

$ RAILS_ENV=development bin/rake assets:clobber 
Cuestiones relacionadas