Każda aplikacja internetowa zawiera kilka obrazów i plików CSS, które sprawiają, że wygląda ładnie, a także niektóre pliki JavaScript do obsługi interakcji i zachowania użytkowników. Jeśli zasoby ładują się szybciej, aplikacja internetowa powinna działać lepiej. Istnieje wiele strategii szybkiego ładowania zasobów, takich jak minimalizowanie, kompresowanie (zgrywanie), buforowanie itp.
W trybie programistycznym zasoby są wyświetlane jako oddzielne pliki w kolejności określonej w pliku manifestu.
tym oczywistym app/obrotowe/JavaScript/application.js:
//= require core
//= require projects
//= require tickets
w koła zębate środowisku produkcyjnym stosuje się system opisany powyżej fingerprinting. Domyślnie Railsy zakładają, że zasoby zostały prekompilowane i będą obsługiwane przez Twój serwer WWW jako zasoby statyczne.
Podczas fazy wstępnej kompilacji generowany jest plik MD5 z zawartości skompilowanych plików i wstawiany do nazw plików podczas ich zapisywania na dysku. Te nazwy odcisków palców są używane przez pomocników Rails zamiast nazwy manifestu.
Na przykład w ten sposób:
<%= javascript_include_tag "application" %>
<%= stylesheet_link_tag "application" %>
generuje coś takiego:
<script src="/assets/application-908e25f4bf641868d8683022a5b62f54.js"></script>
<link href="/assets/application-4dd5b109ee3439da54f5bdfd78a80473.css" media="screen"
rel="stylesheet" />
Uwaga: W Asset rurociągu: cache i opcje: concat nie są już używane, usunąć te opcje z javascript_include_tag i stylesheet_link_tag.
Zachowanie odcisków palców jest kontrolowane przez opcję inicjalizacji config.assets.digest (która domyślnie jest równa wartości true dla produkcji i wartość false dla wszystkich pozostałych).
Precompiling Rails Assets for Development
można ellaborate cel config.assets.compile = false –
Jest miły odpowiedź na to pytanie: http://stackoverflow.com/a/8827757/589620 –
Co config.assets.compile = false mówi, że nie używaj skompilowanych zasobów, po prostu wybierz wszystko w folderze zasobów, ale jeśli ustawisz go na wartość true, niż się spodziewasz, to skompilowałeś zasoby i szyny będą szukać tych skompilowanych zasobów. – Zahid