2011-07-13 4 views
4

Je travaille avec le pipeline d'actifs de Rails 3.1 et bien qu'il semble fonctionner parfaitement dans mon environnement de développement sur mon localhost, j'ai d'énormes problèmes avec le moteur.Rails 3.1 Asset Pipeline et Caching

Voici mon problème de base.

Quand j'inclure des images pour un fond dans un de mes fichiers SCSS:

 a { 
     color: #3c7f8b; 
     font-weight: bold; 
     padding-left: 35px; 
     font-size: 13px; 
     display: block; 
     background: white url(shade.png) top right; 
     &:hover { 
      color: #222222; 
      background: white url(shade2.png) top right; } 
     &.on { 
      color: #222222; 
      background: white url(shade2.png) top right; } } } 

Je cours sur les questions suivantes: Même si je précompilées mes actifs, le navigateur demande /assets/shade.png au lieu de /assets/shade-FINGERPRINT.png qui est le fichier réel qui existe.

Est-ce que quelqu'un sait ce que je peux résoudre ce problème avec les images de référence dans mon dossier d'actifs dans mes fichiers .scss?

+0

la documentation sur pipeline d'actifs est en version bêta, quelques bonnes choses là-dedans - http://ryanbigg.com/guides/asset_pipeline.html – house9

+0

Il tourne En fait, c'était un problème avec ma stratégie de déploiement plutôt que le pipeline d'actifs réel – TheDelChop

+0

@TheDelChop, Pouvez-vous publier les détails du problème avec votre stratégie de déploiement? – mandreko

Répondre

2

Vérifiez la réponse de « tybro0103 » sur ce post - Rails 3.1 and Image Assets

changer fondamentalement le fichier de SCSS à scss.erb puis utilisez la méthode d'aide de asset_path

Précompilation avant deploy

avertissement: je n'ai pas essayé moi-même

4

Vous devriez utiliser l'URL d'image plutôt que l'URL pour référencer les images lorsque vous utilisez scss dans Rails 3.1.

De même, assurez-vous de charger la boussole avant sass-rails, car sass-rails prend le pas sur les méthodes d'actif pour fonctionner avec le pipeline d'actifs.

Enfin, si vous utilisez Capistrano à déployer, ajouter dans

load 'deploy/assets' 

Pour activer la compilation d'actifs lors du déploiement.

-1

QNM En fait, je pense qu'il ya une erreur avec l'aide de image_url. Je ne sais pas si ils l'ont corrigé mais j'ai vu une recommandation d'utiliser asset_url avec l'image expliquée.

-à-dire asset_url ("some.img", "image)

Questions connexes