ja popchnął app szyn Heroku i utrzymać się na prowadzeniu w następujący problem:Szyny Aktywa prekompilację prostu nie działa
będę zapisać zmiany w moim głównym pliku css.scss (w aktywa/stylów) lub do zdjęć w zasobach/obrazach, naciśnij przycisk git, przekaż to do heroku i odśwież stronę, aby dowiedzieć się, że te zasoby nie zostały w ogóle załadowane.
To był również niewielki problem na serwerze lokalnym, ale wpisując:
rake assets:precompile
i przeładowywania lokalnego serwera zwykle pracował, podczas gdy robi
heroku run rake assets:precompile
a następnie ponownie naciska nic nie robi. Szukałem informacji i nie znalazłem niczego szczególnie przydatnego.
Warto zauważyć, że w moim config/environment.rb (niektóre z nich w wyniku wspomnianej połowowej wokół):
# Enable the asset pipeline
config.assets.enabled = true
if defined?(Bundler)
# If you precompile assets before deploying to production, use this line
Bundler.require(*Rails.groups(:assets => %w(development test)))
# If you want your assets lazily compiled in production, use this line
# Bundler.require(:default, :assets, Rails.env)
end
w config/środowiska/production.rb:
# Disable Rails's static asset server (Apache or nginx will already do this)
config.serve_static_assets = false
# Compress JavaScripts and CSS
config.assets.compress = true
# Fallback to assets pipeline if a precompiled asset is missed
config.assets.compile = true
# Generate digests for assets URLs
config.assets.digest = true
O dodatkowe możliwe zainteresowanie, kiedy popycham do heroku, mówi, między innymi, to:
Preparing app for Rails asset pipeline
Detected manifest.yml, assuming assets were compiled locally
-----> Rails plugin injection
Injecting rails_log_stdout
Injecting rails3_serve_static_assets
i
Installing dependencies using Bundler version 1.3.0.pre.5
Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin --deployment
dowiedziałem się z szyn 3 i tak naprawdę nie wiem, jak rurociąg aktywów różni się od tego, co było dostępne w poprzedniej wersji, więc przepraszam, jeśli mam być idiotą i oddanie nakładanie i/lub sprzeczne ustawienia w moich plikach konfiguracyjnych.
Doceniam każdą pomoc. To był ból głowy.
Więc masz na myśli add/public/assets do pliku .gitignore? Czy to I "git rm" katalogu? Lub usunąć określone pliki w nim? Przepraszam. Nie wiem, jaki stosunek ma ten katalog do potoku zasobów, więc nie jestem pewien, jak z mocą wsteczną usunąć niepoprawne składniki. – Sasha
Usuń ten katalog z git, a następnie dodaj go do git ignore. Ten katalog jest miejscem, w którym kompiluje wszystkie zasoby, do których należy uruchomić zasoby rake: prekompilacja. –
Pamiętaj, aby zatwierdzić usunięte pliki w publicznym/asset/do opanowania! więc pchasz pusty katalog public/assets/do heroku. Powinieneś zobaczyć, że heroku automatycznie wywołuje atrybuty rake: prekompilacja – Bruno