Ich versuche zu verstehen, in rails
, wie ruby gems
verfügbar werden automatisch verwendet werden, ohne required
in den Dateien, die die Edelsteine sind?Wie funktioniert Rubin Juwel in einer Schiene Umgebung
Antwort
Dies erfolgt über bundler/setup
: http://bundler.io/v1.3/bundler_setup.html. Es ist in Ihrer config/boot.rb
Datei erforderlich. Kurz gesagt stellt es zunächst Umgebungsvariable auf Ihre Gemfile Punkt:
ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__)
Dann fügt sie Wege für alle Edelsteine zu LOAD_PATH, von bundler/setup
erfordern:
require 'bundler/setup' if File.exist?(ENV['BUNDLE_GEMFILE'])
Dann bedarf es alle benötigten Edelsteine (config/application.rb):
Bundler.require(*Rails.groups)
Rails-Anwendungen verwenden Bundler (das ist die Sache mit der Gemfile
). Wenn der Bundler die Gemfile
beim Start einer Rails-Anwendung lädt, benötigt er automatisch alle dort aufgeführten Edelsteine, so dass Sie dies nicht selbst tun müssen.
Ich empfehle Ihnen "Crafting Rails 4 Applications: Expert Practices for Everyday Rails Development" Kapitel 1. Erstellen unserer eigenen Renderer zu lesen:
Hinweis der Edelstein hat den gleichen Namen wie die Datei im lib-Verzeichnis, das pdf_renderer ist. Wenn Sie nach dieser Konvention dieses Juwel in einer GEM-Datei einer Rails-Anwendung deklarieren, wird die Datei unter lib/pdf_renderer.rb automatisch benötigt.
- 1. Graphing Rubin Juwel für Mac?
- 2. Wie bekomme ich ein installiertes Rubin-Juwel in Rails?
- 3. Wie funktioniert Malloc in einer Multithread-Umgebung?
- 4. , wie mehrere Modelle in einer Schiene Form
- 5. Rubin Juwel für Nachrichten Parsing Snippets
- 6. Kann nicht installiert Rubin Juwel Ruby-Jmeter
- 7. Fehler bei der Installation Rubin Juwel
- 8. 2 Möglichkeiten, ein Rubin-Juwel zu installieren
- 9. einprägsamer Name Generator Juwel für Rubin
- 10. Wie Paginierung in Twitter-Juwel funktioniert?
- 11. Hinzufügen einer Hilfsmethode mit einem Juwel
- 12. Links in Kommentaren in einer Schiene Anwendung
- 13. Reloading teilweise in einer Schiene App
- 14. Schiene 3 - Passagierweg Problem
- 15. Verwenden Remail Juwel mit Rubin auf Schienen 3
- 16. Wie funktioniert Static in einer Umgebung mit mehreren Threads?
- 17. Apartment Rubin Juwel: Willst du eine Ausnahme fangen
- 18. Seltsame Leistung einer Schiene + sinatra App
- 19. Rubin Juwel nicht gefunden, obwohl es installiert ist
- 20. mit geokit oder anderen Rubin Juwel, um das Zentrum einer Reihe von Geo-Koordinaten zu berechnen
- 21. Wie funktioniert diese Rubin Injektion Magie?
- 22. Authentifizierung in einer SharePoint-Umgebung
- 23. Rubin green_shoes Ströme funktioniert nicht
- 24. immer anzeigen niceScroll Schiene
- 25. Fibonacci-Nummer in einer Reihe (Rubin)
- 26. Wie in Rubin quetschen
- 27. Spurerkennung in einer künstlichen Umgebung
- 28. Cron funktioniert nicht Immer wenn Juwel
- 29. Pyjnius funktioniert nicht in virtueller Umgebung
- 30. Building Juwel wirft IOError