J'essaie de mettre mon application en production et les chemins d'accès aux images et aux fichiers CSS ne fonctionnent pas.
Voici ce que je fais actuellement :
- Les images se trouvent dans /app/assets/images/image.jpg
- Les feuilles de style se trouvent dans /app/assets/stylesheets/style.css
- Dans ma mise en page, je fais référence au fichier css comme ceci :
<%= stylesheet_link_tag "styles", media: "all", "data-turbolinks-track" => true %>
- Avant de redémarrer la licorne, j'exécute
RAILS_ENV=production bundle exec rake assets:precompile
et cela réussit et je vois les fichiers empreintes digitales dans le fichierpublic/assets
répertoire.
Lorsque je navigue sur mon site, j'obtiens une erreur 404 non trouvée pour mysite.com/stylesheets/styles.css
.
Qu'est-ce que je fais de mal ?
Mise à jour : Dans ma mise en page, cela ressemble à ceci :
<%= stylesheet_link_tag "bootstrap.min", media: "all", "data-turbolinks-track" => true %>
<%= stylesheet_link_tag "styles", media: "all", "data-turbolinks-track" => true %>
<%= javascript_include_tag "application", "data-turbolinks-track" => true %>
La source de génération est la suivante :
<link data-turbolinks-track="true" href="stackoverflow.com/stylesheets/bootstrap.min.css" media="all" rel="stylesheet" />
<link data-turbolinks-track="true" href="stackoverflow.com/stylesheets/styles.css" media="all" rel="stylesheet" />
<script data-turbolinks-track="true" src="/assets/application-0c647c942c6eff10ad92f1f2b0c64efe.js"></script>
On dirait que Rails ne recherche pas correctement les fichiers css compilés. Mais c'est très confus pourquoi il fonctionne correctement pour les javascripts (remarquez l'icône /assets/****.js
chemin).