2012-07-21 21 views
10

GÜNCELLEME:ActionView :: Şablon :: Hata (precompiled değildir): Heroku sedir üzerinde

Bazen "" nil veya results.image olduğu ortaya çıkıyor, bu nedenle bu uygulamayı kırılma varlık boru hattının çünkü "" gibi bir görüntü arıyordu ve onu bulamıyordu. Şu anda bir görüntü yoksa bir resim göstermiyorum, ancak eksik görüntüler için varsayılan bir resim eklemem gerekecek ... daha kalıcı bir düzeltme olmalı.


Ben Heroku sedir bu sayısında ve Raylar varlık boru hattının yaklaşık SO birkaç soru var ve ben çok sayıda çözüm denedim ama bunların hiçbiri çalışır ve muhtemelen çünkü Sorunum Başka bir yerde görmediğim bir kırışıklık vardı.

Uygulamamda Rails 3.2.6 kullanılıyor ve bunu Heroku'nun sedir yığınına yerleştirdim. Bağlı bir postgres db'yi websolr üzerinden arama yapan basit bir arama uygulamasıdır, bu yüzden indeksi (indeks indeksi) paramsız [: q] .present olmadan yüklediğinizde mi? bir arama kutusu alırsınız ve bu iyi çalışır. Ama arama kutusuna bir şey koymak ve ne zaman teslim çarptı ve tekrar endeks # endeksi yükleri ama bu sefer sonuçlarını görüntülemek için çalışır, alıyorum:

app[web.1]: Completed 500 Internal Server Error in 440ms 
app[web.1]: 
app[web.1]: ActionView::Template::Error (isn't precompiled): 
app[web.1]:  12:   - @results.each do |result| 
app[web.1]:  13:   %li 
app[web.1]:  14:    %div 
app[web.1]:  15:    = image_tag result.image 
app[web.1]:  16:    %div 
app[web.1]:  17:    = result.title 
app[web.1]:  18:    %div 
app[web.1]: app/views/index/index.html.haml:15:in `block in _app_views_index_index_html_haml___4350601325072829986_32734540' 
app[web.1]: app/views/index/index.html.haml:12:in _app_views_index_index_html_haml___4350601325072829986_32734540' 

Ben ettik diğerleri vs benim özel durumda ilgili tuhaf neler görülen aşağıdaki satırı: Ben gördüğüm bu gibi diğer tüm sorulara ile

ActionView::Template::Error (isn't precompiled): 

, parantez içinde bir css dosyası, yani ("foo.css" precompiled değildir) vardır, ya içinde benim olması gerektiği gibi görünüyor ("index.css" önceden derlenmiş değil). Ama işte sadece boş!

Çalışmaya çalıştığım aşamalı dağıtımım budur, bu yüzden RAILS_ENV = aşamalandırma komisyonu varlıklarını çalıştırmayı denedim: precompile (sonuçların işlenmesi, tabii ki), ancak bu hata düzeltmiyor . Hatta görünümünde sıyırma çalıştı (orada herhangi bir gerçek stil eksikliği dikkat edin). Hiçbir şey işe yaramıyor ve ben bir kayıp yaşıyorum. Herhangi bir yardım büyük takdir edilecektir. Başvuru için

, burada benim gemfile geçerli:

İşte
source 'https://rubygems.org' 

gem 'rails', '3.2.6' 
gem 'pg' 
gem 'haml-rails' 
gem 'mongoid' 
gem 'sunspot_rails', '~> 1.3.0' 
gem 'sunspot_solr' 


# Gems used only for assets and not required 
# in production environments by default. 
group :assets do 
    gem 'sass-rails', '~> 3.2.3' 
    gem 'coffee-rails', '~> 3.2.1' 
    gem 'uglifier', '>= 1.0.3' 
end 

gem 'jquery-rails' 

group :development do 
    gem 'heroku_san' 
    gem 'annotate' 
    gem 'awesome_print' 
end 

group :development, :test do 
    gem 'rspec-rails' 
end 

group :test do 
    gem 'cucumber-rails', :require => false 
    gem 'capybara' 
    gem 'database_cleaner' 
    gem 'spork' 
    gem 'launchy' 
end 

group :staging, :production do 
    gem 'thin' 
end 

benim config/application.rb dosyada yapılandırma seçenekleri şunlardır: benim ortamlarda yapılandırma seçenekleri burada olan

config.encoding = "utf-8" 
config.filter_parameters += [:password] 
config.active_support.escape_html_entities_in_json = true 
config.active_record.whitelist_attributes = true 
config.assets.enabled = true 
config.assets.version = '1.0' 
config.assets.compile = true 

Ve/staging.rb dosya:

config.cache_classes = true 
config.consider_all_requests_local  = false 
config.action_controller.perform_caching = true 
config.serve_static_assets = false 
config.assets.compress = true 
config.assets.compile = true 
config.assets.precompile += ['index.css.scss'] 
config.assets.digest = true 
config.i18n.fallbacks = true 
config.active_support.deprecation = :notify 
+0

sadece aynı sorunla karşılaştık. çok teşekkürler! – rickypai

cevap

16

Boş bir resim URL'niz var mı? CarrierWave gibi bir şeyiniz var mı?

Kodunuzdan görüyorum image_tag result.image hizmet vermektedir - bu mümkün değil mi?

Bu iş parçacığı bunu çözmek gerekir: ActionView::Template::Error (isn't precompiled):

+0

CarrierWave yüklü değil, ancak resim URL'lerinden birinin boş olması olası. Bunu kontrol edip sonuçları yazarım. –

+0

Yani sıfır ve boş görüntüleri ortadan kaldırarak çalıştı! Bir güncelleme gönderirim. –

+0

Tatlı .... İyi zamanlar/Varlık Boru Hattı ... – cman77

İlgili konular