ho spinto un'applicazione Rails per Heroku e continuare a correre in seguente problema:Rails Attività Precompile semplicemente non funziona
Vi risparmio modifiche al mio file css.scss principale (in attività/fogli di stile) o per immagini in risorse/immagini, spingere a dare, spingere quello a heroku, e ricaricare la pagina, solo per scoprire che questi beni non sono stati caricati affatto.
Questo è stato anche un piccolo problema sul server locale, ma di entrare:
rake assets:precompile
e ricaricando il server locale di solito lavorato, mentre facendo
heroku run rake assets:precompile
e poi ri-spingendo non fa nulla. Ho pescato in giro per informazioni e non ho trovato nulla di particolarmente utile.
Da segnalare, nel mio config/application.rb (alcune di queste il risultato di dette pesca intorno):
# Enable the asset pipeline
config.assets.enabled = true
if defined?(Bundler)
# If you precompile assets before deploying to production, use this line
Bundler.require(*Rails.groups(:assets => %w(development test)))
# If you want your assets lazily compiled in production, use this line
# Bundler.require(:default, :assets, Rails.env)
end
in config/ambienti/production.rb:
# Disable Rails's static asset server (Apache or nginx will already do this)
config.serve_static_assets = false
# Compress JavaScripts and CSS
config.assets.compress = true
# Fallback to assets pipeline if a precompiled asset is missed
config.assets.compile = true
# Generate digests for assets URLs
config.assets.digest = true
Di ulteriore interesse possibile, quando spingo su heroku, si dice, tra le altre cose, questo:
Preparing app for Rails asset pipeline
Detected manifest.yml, assuming assets were compiled locally
-----> Rails plugin injection
Injecting rails_log_stdout
Injecting rails3_serve_static_assets
e
Installing dependencies using Bundler version 1.3.0.pre.5
Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin --deployment
ho imparato con Rails 3 e non so davvero come la pipeline beni è diverso da ciò che era disponibile nella versione precedente, quindi scusate se devo essere un idiota e mettendo sovrapposizioni e/o impostazioni contraddittorie nei miei file di configurazione.
Apprezzerei qualsiasi aiuto. Questo è stato un mal di testa.
Quindi intendete aggiungere/pubblico/risorse al file .gitignore? Fatelo E "git rm" la directory? O cancellare determinati file al suo interno? Scusate. Non so quale relazione abbia questa directory con la pipeline degli asset, quindi non sono sicuro di come annullare in modo retroattivo i suoi componenti non validi. – Sasha
Rimuovi quella directory da git e poi aggiungila anche a git ignore. Questa directory è dove vengono compilati tutti gli asset quando si eseguono le risorse di rake: precompilare. –
assicurati di salvare i file cancellati in public/assets/to master! quindi si spinge una directory pubblica/assets/vuota su heroku. Dovresti vedere heroku richiamare automaticamente le risorse del rake: precompilare – Bruno