Używam datatables.net . http://www.datatables.net/
mam tam taki wpis:
$(document).ready(function() {
var oCompanyTable = $('#companies').DataTable({
processing: true,
....
language: {
processing: "<img src='/assets/spinner.gif'>",
...
}
});
});
zgodnie zresztą z:
W wersji RAILS_ENV=development działa i kręci się kółeczko, gdy dane są pobierane z bazy lub gdy je sortuję.
wrzuciłem na serwer produkcyjny (nginx, passeger) i
w /config/enviroments/production.rb
zakomentowałem:
# config.serve_static_assets = false
i wykonałem
rake tmp:clear
rake assets:clean
rake assets:clobber
rake assets:precompile,
ciągle dostaję błąd:
App 4558 stdout: ActionController::RoutingError (No route matches [GET] "/assets/spinner.gif"):
App 4558 stdout: actionpack (4.2.0) lib/action_dispatch/middleware/debug_exceptions.rb:21:in `call'
dotyczy to oczywiście fragmentu:
processing: "<img src='/assets/spinner.gif'>",
z w/w skryptu JS
Nie ma żadnego znaczenia, co tam wstawiam:
processing: "<img src='spinner.gif'>",
processing: "<img src='/assets/images/spinner.gif'>",
processing: "<img src='assets/spinner.gif'>",
processing: "<img src='../assets/spinner.gif'>",
i tak jest d…pa blada.
Dopiero gdy przekopiuję plik spinner.gif
do /public/assets
, to znajduje ścieżkę do niego i go wyświetla.
Już znalazłem wpisy, że należy zrobić assets:precompile:nodigest (nie działa w rails 4.2, ruby 2.2.0)
Czy doprawdy muszę zawsze kopiować ręcznie ten plik lub użyć pomysłu:
?
Dodam jeszcze, że topic:
i
czytałem, nie mam spacji w nazwie i plik:
spinner-991c48c652fdc37f01fb58f0e16aad98.gif
który znajduje się w /public/assets ma prawa do odczytu dla wszystkich