13 votes

Rails avec Twitter Bootstrap : toujours au service d'un ancien atout

Je deviens fou ici. Je développe une application rails, et j'utilise la gemme twitter-bootstrap-rails afin d'inclure les styles Twitter Bootstrap dans mon application. Cette gemme génère un fichier appelé 'bootstrap_and_overrides.css.less' dans app/assets/stylesheets, que j'ai utilisé pour modifier certaines des variables bootstrap et inclure mes propres surcharges CSS.

Tout a bien fonctionné jusqu'à aujourd'hui. Pour une raison quelconque, les modifications que j'apporte à ce fichier aujourd'hui sont enregistrées dans le fichier, mais Rails continue de servir l'ancienne version du fichier ! J'ai cherché et je n'ai trouvé aucune version précompilée du fichier nulle part (rien dans public/assets)... seulement celle dans assets/stylesheets que j'ai modifiée. Tout semble correct en ce qui concerne les répertoires de l'application, mais lorsque je démarre le serveur rails, que je charge la page et que j'utilise l'inspecteur d'éléments pour regarder les feuilles de style, j'utilise une ancienne version de 'bootstrap_and_overrides.css.less' avec des règles que j'ai supprimées. J'ai désactivé le cache de mon navigateur, et j'ai essayé dans 4 navigateurs différents également, donc je suis presque sûr que ce n'est pas le résultat de la mise en cache du navigateur.

Le pipeline d'actifs de rails semble juste servir une version du fichier qui n'existe pas ! Quelqu'un a-t-il une idée de la raison pour laquelle cela peut se produire ?

31voto

Andrew Points 945

Je l'ai corrigé.

Le pipeline d'actifs stockait une version en cache dans le fichier tmp/cache .

J'ai couru rake tmp:clear qui a supprimé tous les fichiers qu'il contenait, et puis rails a servi la version de *bootstrap_et_overrides.css.less* que je voulais.

Je ne comprends pas pourquoi la version en cache a soudainement cessé d'être mise à jour. Arrghhhh !

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X