2011-11-23 13 views
33

Aktualizacjaszyny 3,1 rozmieszczenie na Heroku .css nie jest prekompilowana error

mam ten błąd, ponieważ miałem plik public.css i public.js że nie został skompilowany z resztą i .css Pliki .js. Rozwiązaniem było dodanie tej linii do pliku production.rb

# Precompile additional assets (application.js, application.css, and all non-JS/CSS are already added) 
config.assets.precompile += %w(public.js public.css ) 

Jak widać z komentarza, wszystkie aplikacje nazw plików są już dodane. Musiałem więc dodać te, które nie były nazywane aplikacjami.

Mam nadzieję, że komuś pomaga!

pytanie Original

mam ten plik gem

gem 'rails', '3.1.0' 

group :production do 
    gem 'pg' 
end 
group :development, :test do 
    gem 'sqlite3' 
end 

gem "heroku" 
gem 'thin' 
gem 'sass-rails', " ~> 3.1.0" 
gem 'coffee-rails', "~> 3.1.0" 
gem 'tabulous' 
gem 'json' 
gem "paperclip", "~> 2.4" 
gem "devise" 
gem "redcarpet" 

group :assets do 

    gem 'uglifier' 
end 

gem 'jquery-rails' 

gem "rspec-rails", :group => [:test, :development] 
group :test do 
end 

gdy wdrożyć z "git Push Heroku master" Widzę to

Preparing app for Rails asset pipeline 
     Running: rake assets:precompile 
     mkdir -p /tmp/build_2m34y4hj01m4o/public/assets 
     mkdir -p /tmp/build_2m34y4hj01m4o/public/assets 
     mkdir -p /tmp/build_2m34y4hj01m4o/public/assets 
     mkdir -p /tmp/build_2m34y4hj01m4o/public/assets/admin 
     mkdir -p /tmp/build_2m34y4hj01m4o/public/assets/admin 
-----> Rails plugin injection 
     Injecting rails_log_stdout 
     Injecting rails3_serve_static_assets 
-----> Discovering process types 
     Procfile declares types  -> (none) 
     Default types for Ruby/Rails -> console, rake, web, worker 
-----> Compiled slug size is 31.2MB 
-----> Launching... done, v5 
     http://maktaba.herokuapp.com deployed to Heroku 

ale w dziennikach Heroku I pobierz ten ActionView :: Template :: Error. css nie jest prekompilowana Dziwne .. I thougt było patrząc na informacje zwrotne rozmieszczania

2011-11-23T22:59:48+00:00 app[web.1]: Rendered public/index.html.erb within layouts/first (0.7ms) 
2011-11-23T22:59:48+00:00 app[web.1]: Completed 500 Internal Server Error in 30ms 
2011-11-23T22:59:48+00:00 app[web.1]: 
2011-11-23T22:59:48+00:00 app[web.1]: ActionView::Template::Error (public/public.css isn't precompiled): 
2011-11-23T22:59:48+00:00 app[web.1]:  2: <html> 
2011-11-23T22:59:48+00:00 app[web.1]:  3: <head> 
2011-11-23T22:59:48+00:00 app[web.1]:  4: <title>Maktaba</title> 
2011-11-23T22:59:48+00:00 app[web.1]:  5: <%= stylesheet_link_tag "public/public" %> 
2011-11-23T22:59:48+00:00 app[web.1]:  6: <%= javascript_include_tag "public/public" %> 
2011-11-23T22:59:48+00:00 app[web.1]:  7: <%= csrf_meta_tags %> 
2011-11-23T22:59:48+00:00 app[web.1]:  8: <%= csrf_meta_tags %> 
2011-11-23T22:59:48+00:00 app[web.1]: app/views/public/index.html.erb:5:in `_app_views_public_index_html_erb___1726244208117637261_45234420' 
2011-11-23T22:59:48+00:00 app[web.1]: app/controllers/public_controller.rb:13:in `block (2 levels) in index' 
2011-11-23T22:59:48+00:00 app[web.1]: 
2011-11-23T22:59:48+00:00 app[web.1]: app/controllers/public_controller.rb:12:in `index' 

Czy każdy z was zobaczyć, co robię źle?

+2

dodając linię 'config.assets.precompile + =% w (public.js public.css)' do production.rb, po uruchomieniu pakietu 'bundle exec rake assets: precompile', po którym następuje restart push i heroku, zrobiłem to za mnie. dzięki. – scald

Odpowiedz

18
  • Run bundle exec rake assets:precompile na swój lokalny kod
  • zatwierdzić zmiany i wdrożyć do Heroku

Jeśli jest to twój pierwszy raz wdrażania aplikacji do Heroku może wystąpić więcej błędów po to został rozwiązany. Daj mi znać, co się stanie.

7

Faktycznie, trzeba uruchomić prekompilację do produkcji środowiska:

  • Uruchom RAILS_ENV=production bundle exec rake assets:precompile na lokalnym
  • Commit i wdrożyć do Heroku

Mówiąc ogólniej, Heroku docs opisać trzy opcje do kompilacji aktywów dla Rails 3.1+ na Cedar:

  1. kompilacji lokalnie (ujęte w tej odpowiedzi)
  2. kompilacji podczas zawieszonego kompilacji
  3. kompilacji podczas wykonywania
Powiązane problemy