Активы Rails не обновляются - PullRequest
9 голосов
/ 10 марта 2012

У меня есть приложение на Rails 3.1 и по какой-то причине, когда я меняю CSS, эти изменения не отображаются.Я сделал bundle exec rake assets:precompile, и это помогло однажды, но теперь я застрял со старым CSS, несмотря ни на что.

Ответы [ 6 ]

14 голосов
/ 10 марта 2012

Поскольку ваши активы теперь предварительно скомпилированы, вам необходимо очистить их следующим

bundle exec RAILS_ENV=development rake rails_group=assets assets:clean
5 голосов
/ 04 января 2016

Для моей производственной среды мне пришлось объединить несколько из вышеперечисленных шагов, чтобы перекомпилировать мои активы.

Сначала я должен был сделать:

rake assets:clean

Убедившись, что я был в правильной обстановке

Затем мне нужно было удалить каталог public/assets, который создает прекомпиляция (или просто файл, который нужно исправить, например application-<hash>.css)

Затем, наконец, повторите

rake assets:precompile

И перезапустите мой сервер apache (я использую пассажир с apache, не тестировался с nginx)

5 голосов
/ 10 марта 2012

Возможно, вы захотите попробовать рейк-ресурсы: очистить, а затем рейк-активы: прекомпилировать

3 голосов
/ 02 марта 2014

Для меня это было просто удаление скомпилированных файлов css / js из публичного каталога.

Оказалось, что другие разработчики поместили его туда и никому не сообщили.

2 голосов
/ 11 сентября 2017

Что сработало для меня в рельсах, хром, макинтош:

1 - в терминале:

rake assets:clean

2 - в Sublime text или в Finder:

Удалить папку "Public> Assets"

3 - при запуске терминала локальный сервер:

rails s

4 - в хроме:

http://localhost:3000/

5 - Перезагрузить кэш очистки хрома, если необходимо:

cmd + shift + R

Теперь вы сможете обновлять свои CSS-файлы и видеть немедленные изменения на своем локальном хосте, просто перезагрузив страницу

НЕ ЗАПУСКАЙТЕ "rake assets: precompile" в терминале, потому что он воссоздает папку "assets" в папке "public" и вы не сможете видеть обновления ваших файлов CSS напрямую в вашем localhost

0 голосов
/ 18 июля 2017

На случай, если кто-нибудь из будущих Google найдет эту ветку: у меня была такая же проблема в тестовой среде приложения Rails 4.2.8. Ни одно из вышеуказанных решений не сработало. Установка config.serve_static_files = false в config/environments/test.rb решена.

Имейте в виду, что это временное исправление, так как все файлы в папке public больше не обслуживаются (включая 404.html, favicon.ico, robots.txt и т. Д.).

...