2013-04-23 2 views
15

Ho un'applicazione rails 4.Rails 4 Asset Precompilazione con più file manifest

Ho 3 set di file manifest per separare la logica per la mia app.

Questi file sono

application.js 
backoffice.js 
pos.js 

application.css 
backoffice.css 
pos.css 

Nei miei file di layout, mi riferisco tali attività utilizzando i javascript_link_tags associati

ho aggiunto il seguente al mio file production.rb (al fine di includere questi file in la precompilazione dei beni):

config.assets.precompile += %w(backoffice.js pos.js pos.css backoffice.css) 

ho quindi eseguire le attività rastrello: precompilare, ma non è in ripresa i file aggiuntivi. Compila solo i manifesti application.js e application.css.

In production.rb Inoltre, ho:

config.serve_static_assets = true 
config.assets.compile = false 

Chiunque tutte le idee?

grazie

risposta

24

Se si copia questa riga

config.assets.precompile += %w(backoffice.js pos.js pos.css backoffice.css) 

al config/application.rb (Rails 4.0) (invece di config/environments/production.rb) che funzionerà.

Ho un suggerimento da qui: Rails 4 assets.precompile

Come suggerito nei commenti, in Rails 4.2 si dovrebbe scrivere sopra la linea in config/initializers/assets.rb

+3

Questo potrebbe essere un bug nel rotaie 4? – l33z3r

+1

Può/dovrebbe quel codice andare in 'config/initializers/assets.rb'? – ahnbizcad

+1

@gwho Sì, in Rails 4.2 lo snippet viene ora inserito nell'inizializzatore quando si esegue il comando 'rails new'. –