2012-06-17 17 views
20

In produzione (Heroku), sto ottenendo il seguente errore:ActionView :: Template :: errore (non è precompilato):

Started GET "/articles/1" for 50.134.181.231 at 2012-06-17 00:37:35 +0000 
2012-06-17T00:37:35+00:00 app[web.1]: ActionView::Template::Error (isn't precompiled): 
2012-06-17T00:37:35+00:00 heroku[router]: GET wandr.com/articles/1 dyno=web.1 queue=0 wait=0ms service=497ms status=500 bytes=728 
2012-06-17T00:37:35+00:00 app[web.1]: 
2012-06-17T00:37:35+00:00 app[web.1]:  74: = image_tag @article.featured_photo_url(:sm).to_s 
2012-06-17T00:37:35+00:00 app[web.1]:  75: 
2012-06-17T00:37:35+00:00 app[web.1]:  77: = image_tag @article.background_photo_url(:md).to_s 
2012-06-17T00:37:35+00:00 app[web.1]:  76: %p 
2012-06-17T00:37:35+00:00 app[web.1]:  78: %p 
2012-06-17T00:37:35+00:00 app[web.1]:  79: = image_tag @article.cover_photo_url(:md).to_s 
2012-06-17T00:37:35+00:00 app[web.1]:  80: 
2012-06-17T00:37:35+00:00 app[web.1]: app/views/articles/show.html.haml:77:in `_app_views_articles_show_html_haml__1847247375488199378_48105500' 
2012-06-17T00:37:35+00:00 app[web.1]: 
2012-06-17T00:37:35+00:00 app[web.1]: app/controllers/articles_controller.rb:21:in `show' 
2012-06-17T00:37:35+00:00 app[web.1]: 
2012-06-17T00:37:35+00:00 app[web.1]: Processing by ArticlesController#show as HTML 
2012-06-17T00:37:35+00:00 app[web.1]: Rendered articles/show.html.haml within layouts/admin (420.5ms) 
2012-06-17T00:37:35+00:00 app[web.1]: Parameters: {"id"=>"1"} 
2012-06-17T00:37:35+00:00 app[web.1]: Completed 500 Internal Server Error in 486ms 

Io corro Rails 3.2.6, tra cui actionpack 3.2 0,6 che ho pensato avuto questa correzione per questo problema: https://github.com/rails/rails/commit/6bb86e1f3f7f9e11ee1c056d8742125173ecbce1

ho provato anche questo: "ActionView::Template::Error (isn't precompiled)" raised on "image_tag nil"

in sostanza, fino a quando una delle immagini in questa pagina non esistono, è gettando questo errore. Se carico le immagini, funziona bene. Qualche idea?

Grazie, --mark

+0

sembra che la correzione riguardi solo "" "' non 'nil' – lulalala

risposta

46

Suppongo che tu stai usando qualcosa come CarrierWave per gestire upload di file? È possibile specificare un gestore di immagini predefinito nella classe uploader:

https://github.com/jnicklas/carrierwave#providing-a-default-url

class MyUploader < CarrierWave::Uploader::Base 
    def default_url 
    "/images/fallback/" + [version_name, "default.png"].compact.join('_') 
    end 
end 

Questa uscita volontà l'immagine di default, piuttosto che cercare di accedere a un file inesistente chiamato "" in cantiere risorsa.

+0

Questo ha risolto il problema? – cman77

+3

Ciao Jamon, ha risolto il problema per me. Grazie. – Ben

+0

risolve il problema di visualizzazione, tuttavia si interrompe forma carrierwave_direct poiché la chiave della politica viene sovrascritta da default_url e viene respinta da amazon s3. Quindi, invece di fornire un default_url, ho appena controllato per vedere se l'immagine esisteva prima di visualizzarla in una vista – Homan

Problemi correlati