J'aimerais utiliser J'essaie Cordialement,
Alexey Zakharov P> JavaScript_include_tag code> pour saisir tous les scripts liés à toutes les affichages à l'aide de la récursion, qui a placé dans public / javascripts / vues code>. p>.
javascript_include_tag "/ vues",: récursive => true code>, mais n'a pas ajouté de script. P>
4 Réponses :
Selon le Documentation API de renvoie une étiquette de script HTML pour chacune des sources fournies. P>
Vous pouvez passer dans le nom de fichier (.js Extension est facultatif) des fichiers JavaScript existants dans votre répertoire public / JavaScripts pour l'inclusion dans la page en cours ou que vous pouvez transmettre le chemin complet relatif à votre racine de votre document. P>
blockQuote> Vous ne pouvez pas inclure de manière récursive tous les fichiers de votre répertoire. Cependant, vous pouvez toujours écrire quelque chose comme la ligne suivante: p> Javascript_include_tag Code>:
Méthode que vous avez fournie avec erreur. Il crée des URL absolues aux fichiers. Ici, la version modifiée qui fonctionne: def collect_javascript_files (chemin) dir [config.javascripts_dir + fichier :: séparateur + chemin] .map {| S | s.sub (config.assets_dir, "")} fin
Comment obtenez-vous cela pour travailler? Je mets helper_mesthod: collect_js_files code> et votre fonction dans application_controller.rb, mais lorsque j'appelle = javascript_include_tag collect_js_files ("public / javascripts / dossier") code> dans mon html.haml il fait Rien (ligne vide dans le HTML généré), cela serait vraiment utile si cela fonctionne, merci!
Vous pouvez utiliser
RAILS_ROOT/public/javascripts
Le code suivant (non optimisé) doit fonctionner dans des rails 3.0 ou plus
<%= javascript_include_tag Dir[Rails.root.join("public/javascripts/views/**/*.js")].map { |s| s.sub(Rails.root.join("public/javascripts/").to_s, "") } %>
Cela fonctionne parfaitement pour moi. Merci beaucoup. Mes fichiers .js sont présents dans le dossier Javascripts / contrôles avec votre solution, il est capable d'ajouter tous les fichiers dans ce dossier.
Une solution simple consiste à créer un nouveau fichier JS (appelé activate.js) et inclure les fichiers là-bas.
# < FolderWithFiles >/activate.js : //= require_tree .