2012-02-12 14 views
23

Quando una compilazione di oggetti Sprockets non riesce (a causa di un errore di sintassi in CoffeeScript o SASS), non può ricompilare dopo che l'errore è stato risolto perché dice "il file è già richiesto".Come svuotare la cache dei pignoni?

Per far funzionare l'oggetto Pignoni, devo distruggerlo e ricrearlo. Mi stavo chiedendo se qualcuno sapesse se c'era un modo per dire all'oggetto Sprocket di resettarsi internamente per non incorrere in questo problema.

+1

Si trova in modalità di sviluppo o in un ambiente in cui si utilizzano asset precompilati? –

risposta

23

rake tmp:cache:clear elimina la directory della cache temporanea.

+0

Non pulisce la cache di trascinamento. I file in './Tmp/cache/assets/development/sprockets /' esistono ancora. – Zorayr

+1

Che dire di 'rake assets: clobber'? Questa è una aggiunta recente e potrebbe essere disponibile solo in Rails 4. –

+4

Nel mio caso, 'rake tmp: clear' ha funzionato. – Zorayr

9

Nel mio caso, il seguente comando lavorato:

rake tmp:clear 
+1

Questo è un "chiaro" più ampio rispetto alla cache di risorse/pignoni. Secondo ['tmp' docs] (http://guides.rubyonrails.org/command_line.html#tmp):" rake tmp: cancella tutti e tre i concetti: cache, sessioni e socket ". –

2

Dovrebbe essere:

Rails.application.assets.cache.clear 

ma this method solo nel ramo principale e nemmeno in beta.

Aggiornamento: aggiunto in 4.0.0.beta5.

Problemi correlati