2011-11-15 2 views
6

J'ai un problème avec le pipeline d'actifs, j'ai déjà une ressource/contrôleur appelée assets. J'ai donc changé l'option assets.prefix en "/ externals".Rails 3.1.1 - Asset Pipeline - asset.prefix ne fonctionne pas avec la ressource: assets

config.assets.prefix = '/externals' 

Cette simple dose fonctionne pas à moins que je supprimer:

resources: assets 

Ensuite tous les travaux comme prévu.

Je ne sais pas comment écrire un test pour le prouver mais j'ai créé une application pour le montrer.

https://github.com/nodrog/asset-pipeline-issue

Si vous exécutez l'application, et visitez «/produits » tout va travailler, puis allez dans le fichier des itinéraires et changer la variable create_bug true.

Nous avons examiné https://github.com/rails/rails/blob/master/actionpack/lib/sprockets/helpers/rails_helper.rb, puis ajouté un débogueur à la méthode asset_path.

Cette méthode n'est pas appelée si vous utilisez un débogueur dans la méthode javascript_include_tag. Et exécutez la méthode (: asset_path) .source_location, il vous indique qu'il appelle la méthode à partir des routes par défaut et non de l'assistant sprockets.

Toute aide serait grandement appréciée ...

+0

a ouvert un billet dans des rails phare sur cette question. et ont téléchargé un folk qui résout le problème, mais probablement pas de la meilleure façon. https://github.com/rails/rails/issues/3643#issuecomment-2775938 – nodrog

+0

Vous avez raison nodrog, c'est un problème compliqué. J'ai couru dedans parce que les helpers n'utilisaient pas du tout l'option config.assets.prefix (qu'il y ait ou non des ressources: assets dans routes.rb), et quand cela a été corrigé, j'ai pensé que tout allait bien. Hélas, les assistants Sprockets n'utilisent pas le paramètre config lorsque les assets sont spécifiés dans config.rb. Pourquoi? Je vais regarder votre travail maintenant. J'ai essayé de contourner le problème avec des contraintes, ainsi que de diriger mon préfixe personnalisé vers Sprockets, mais pas de chance. – Docunext

Répondre

Questions connexes