Les Rails de la Compréhension de application.js et de l'application.css
De nouveaux rails. Juste essayer de comprendre ces deux fichiers dans le dossier \actifs répertoire.
Par exemple, l'application.js le fichier contient des lignes telles que:
//= require jquery
//= require jquery_ujs
//= require_tree .
Je comprends la require_tree .
ajoute simplement tous les fichiers JS dans le répertoire courant. Et par le contexte, je peux dire que require jquery
ajoute les bibliothèques jQuery. Mais où est-il obtenir ces bibliothèques jQuery? Je ne vois pas du tout jquery.js les fichiers dans mon dossier des actifs, ou dans l'ensemble de mon application directement pour vous?
De même, je suis en suivant quelques instructions pour installer twitter bootstrap (http://rubydoc.info/gems/bootstrap-sass-rails/2.3.2.0/frames). Après l'ajout de mes gemmes pour le Gemfile, j'ai besoin d'ajouter //= require bootstrap
à l'application.js fichier, et @import 'bootstrap'
à ma demande.css et maintenant il fonctionne comme par magie!!! Pourquoi!? Je ne trouve pas ces fichiers n'importe où
Merci!
OriginalL'auteur Ricky | 2013-05-30
Vous devez vous connecter pour publier un commentaire.
Pour le comprendre, vous avez à regarder Pignons, qui est utilisé pour la compilation et la portion des ressources web.
Vous pouvez trouver ces fichiers à l'aide de
gem which
. Voici un exemple avecbootstrap-sass
:L'explication de
@import 'bootstrap'
: https://github.com/thomas-mcdonald/bootstrap-sass#css et il y a un question avec des commentaires.OriginalL'auteur Andrey Bodoev
l'application.css et application.js ne sont pas régulièrement les fichiers css et js (ils pourraient l'être, mais ils servent un but différent
les deux sont des fichiers de manifeste qui raconte l'asset pipeline le long avec des pignons js
donc, comme souligné à juste titre par Michael Durrant réponse, http://guides.rubyonrails.org/asset_pipeline.html#manifest-files-and-directives sera la bonne place
mais en fonction de vos autres questions, il semble que vous êtes absent une jolie pièce essentielle du puzzle
Rails travaille principalement avec des pierres précieuses.
Les gemmes sont des morceaux de code en ruby dont vous pouvez dire à ajouter à votre application rails via bundler
lorsque vous ajoutez un bijou comme le bootstrap gem, il est installé (par défaut dans les pierres précieuses de la bibliothèque où vous avez une installation ruby - quelque chose comme Ruby193\lib\ruby\gemmes\1.9.1\gemmes)
Si vous y allez et regardez pour le bootstrap gem, vous trouverez le fichier css et js fichiers qui sont inclus dans l'application, et aussi le jquery et jquery_ujs-vous d'inclure dans le fichier de manifeste
depuis le gems installé à côté des rails, des rails n'est pas l'esprit dans lequel les fichiers sont (aussi longtemps que il sait où ils sont).
De sorte que le fichier de manifeste dit des rails "Hey, inclure ces fichiers pour moi, dans cet ordre spécifique"
C'est pourquoi vous pouvez inclure des fichiers que vous avez écrit qui sont dans le dossier des actifs, et les fichiers sont inclus dans un bijou
Si vous n'incluez pas les fichiers dans le manifeste, mais toujours installer le gem qui est équivalent à l'écriture d'un css ou js fichiers, de le placer dans un dossier et de ne pas dire des rails qu'elle existe. Quand vous dites rails où il est, via le fichier de manifeste, il sera inclus dans les actifs de processus de compilation et vous pouvez y accéder régulièrement.
Alternativly, vous n'avez pas à utiliser l'asset pipeline pour les actifs
vous pouvez inclure le css et le fichier js avec un
et simplement héberger vos fichiers quelque part et qu'il pointe vers les fichiers, mais l'asset pipeline a de nombreux avantages et sa rend vraiment la vie plus facile quand vous obtenez à la connaître
OriginalL'auteur Nick Ginanto
Je pense qu'il obtient à partir de la gemme(s) qui sont installés sur votre système et inclus dans ce projet par l'intermédiaire de votre Gemfile.
Vous pouvez apprendre à http://guides.rubyonrails.org/asset_pipeline.html#manifest-files-and-directives
Par exemple, si vous tapez dans le terminal "gem qui jquery rails', vous pouvez voir le chemin d'accès où vous pouvez trouver ces fichiers
Parfait, merci!
OriginalL'auteur Michael Durrant
C'est les rails de la magie! Donc non, vous ne peut pas voir les fichiers au sein de votre propre répertoire du projet. Si vous êtes vraiment curieux vous pouvez télécharger le code pour la gemme sur le joyau de la page github https://github.com/twbs/bootstrap
Aussi, si vous vraiment voulez changer quelque chose dans la pierre, vous pouvez fourche le code dans votre propre github, changer des choses sur votre succursale locale, puis spécifiez votre propre github comme source pour la gemme dans votre gemfile comme...
gem 'twitter bootstrap', :git => '[email protected]:my_github/twitter_bootstrap.git'
Mais, vous ne voudriez pas à essayer si vous êtes vraiment nouveau pour rails 😉
OriginalL'auteur jherrlin