Ho appena passato dal mio database di sviluppo al database di produzione, e ho capito che sto ottenendo un errore costante nomatter quale vista cerco di aprire. I fogli di stile non si caricano correttamente, nonostante siano nella posizione corretta.Rails Production server: fogli di stile non visualizzati!
Ecco alcune informazioni sull'errore:
View
<head>
<%= stylesheet_link_tag "global", "home", "http://static.flowplayer.org/tools/css/scrollable-navig.css" %>
</head>
Console
Started GET "/stylesheets/global.css?1287048448" for 127.0.0.1 at 2010-10-15 00:18:43 -0400
Processing by WelcomeController#long_switchboard as CSS
Parameters: {"1287048448"=>nil, "path"=>"stylesheets", "link"=>"global"}
Completed in 2ms
NoMethodError (undefined method `id' for nil:NilClass):
app/controllers/welcome_controller.rb:76:in `long_switchboard'
Rendered C:/Sanj/Ruby192/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0/lib/action_dispatch/middleware/templates/rescues/_trace.erb (2.0ms)
Rendered C:/Sanj/Ruby192/lib/ruby/gems/1.9.1/gems/actionpack-3.0.0/lib/action_dispatch/middleware/templates/rescues/_request_and_response.erb (7.0ms)
Rendered C:/Sanj/Ruby192/lib/ruby/gems/1.9.1/gems/actionpack3.0.0/lib/action_dispatch/middleware/templates/rescues/diagnostics.erb within rescues/layout (108.0ms)
Sorgente pagina
<link href="/stylesheets/global.css?1287048448" media="screen" rel="stylesheet" type="text/css" />
<link href="/stylesheets/home.css?1287086704" media="screen" rel="stylesheet" type="text/css" />
<link href="http://static.flowplayer.org/tools/css/scrollable-navig.css" media="screen" rel="stylesheet" type="text/css" />
Quando provo ad aprire il 'globale' e foglio di stile "casa" s dal sorgente della pagina, non vengono aperti. Ho provato ad aggiungere "public /" all'URL, ma dice che nessuna route corrisponde.
Località
Tutti i non-http fogli di stile sono in radice/public/stylesheets/
Itinerari
Gli ultimi due rotte sono le 'catch alls', solo per una caratteristica particolare il sito. Questi sembrano catturare i miei fogli di stile (e probabilmente anche altri tag).
match ':path/:link' => 'welcome#long_switchboard'
match ':path' => 'welcome#short_switchboard'
La pagina dei percorsi li porta in un'azione di controllo catchall in basso della mia pagina di percorsi, che il mio sito utilizza come funzionalità per la comodità dell'utente (gli utenti possono creare URL diversi che altri possono accedere). Non ci sono 404 o 403 - invece ho solo una brutta pagina non formattata! – sscirrus
Quindi il problema è in 'routes.rb' ... Assicurarsi che'/stylesheets', '/ images','/javascripts' ecc. Non siano catturati dalla rotta 'catch-all'. Pubblica il tuo 'routes.rb' se vuoi suggerimenti su come risolvere questo problema. – Mischa
Ho aggiunto il file di rotte, Tokyo. Grazie – sscirrus