Ich schreibe einen Generator, der ein paar Dateien hinzufügt, die mein Server verwenden wird. Ich möchte auch eine Zeile in der Datei environment.rb hinzufügen. Kann dies mit einem Generator geschehen oder sollte ich eine App-Vorlage verwenden?Bestehende Dateien mit einem Schienengenerator ändern?
Antwort
Anstatt zu ändern environment.rb, überprüfen Sie, was Sie mit Rails initializers tun können. Im Grunde werden Sie nur eine neue Ruby-.rb-Datei in config/initializers erstellen und Ihren Konfigurations-Ladecode dort behalten. Wenn Sie die Konfiguration pro Umgebung benötigen, erstellen Sie am besten eine andere Datei (in der Regel YAML) in config /, die die Konfigurationsvariablen pro Umgebung speichert und diese YAML in Ihrem Initialisierer lädt.
können Sie verwenden initializers für benutzerdefinierte Initialisierungscode, aber wenn Sie feststellen, das Hinzufügen zu einer bestehenden Datei mit einem Generator ist angebracht, hier ist, wie der Einbau-Generatoren es tun:
# Excerpted from template_runner.rb
# Make an entry in Rails routing file config/routes.rb
def route(routing_code)
log 'route', routing_code
sentinel = 'ActionController::Routing::Routes.draw do |map|'
in_root do
gsub_file 'config/routes.rb', /(#{Regexp.escape(sentinel)})/mi do |match|
"#{match}\n #{routing_code}\n"
end
end
end
Wie Sie sehen können, ist es nur herauszufinden, wo sie den Code gehen soll (die sentinal
Linie) und die neue Zeile direkt danach einzufüllen.
- 1. Ändern Sie eine Datei mit einem Schienengenerator
- 2. Wie schreibt man Daten in bestehende Excel-Dateien mit Pandas?
- 3. Magento: Ändern der Versandmethode für bestehende Bestellung
- 4. Shell-Skript-Dateien in einem Verzeichnis auf der Grundlage bestehende Dateien erstellen
- 5. in einem Verzeichnisnamen von Dateien ändern
- 6. Google Cloud Storage - GSUtil - Dateien kopieren, bestehende überspringen, nicht überschreiben
- 7. Führen Sie bestehende Wordpress-Website mit Docker
- 8. Bestehende Mitgliedschaft mit mvc4 einrichten
- 9. .vimrc überschreibt bestehende Einstellungen
- 10. Laden Sie keine bestehende Datei mit Axel
- 11. Wie ändere ich die Quelle für einen benutzerdefinierten Schienengenerator? (Thor)
- 12. Bestehende Apps assimilieren?
- 13. Unterstützt Typoskript bestehende Projekte mit JavaScript-Bibliotheken?
- 14. Eigenschaften ändern mit einem Server Neustart
- 15. Wie Dateien Erweiterung mit Fledermaus ändern
- 16. Mit subplot-Befehl eine bereits bestehende subplot mit Linien in ihm ändern, um mehr Linien
- 17. Ändern von .Smali-Dateien
- 18. Migrate bestehende ROR App GAE
- 19. Python 2to3 Dateien nicht ändern
- 20. SublimeText: Ändern der Zeilenenden aller in einem Projekt abgelegten Dateien
- 21. Referenz bestehende CF-Projektmodelle
- 22. Loading bestehende HTML-Datei mit Android WebView
- 23. Wie verfolge ich bestehende Verbindungen mit WebSockets
- 24. Bearbeiten bestehende PDF-Datei FPDF mit
- 25. Bestehende Objekte zu einem anderen Objekt hinzufügen (Ruby on Rails)
- 26. Wie kann ich eine bestehende Ordnerhierarchie mit CarrierWave reorganisieren?
- 27. Laravel Funke für bestehende Projekte?
- 28. Ändern der bezahlten Android-App mit In App Billing - Bestandsschutz bestehende Kunden
- 29. So verstehen Sie bestehende Projekte
- 30. Wie ändert man bestehende Excel-Datei mit PHP?
Danke. Das wird noch besser funktionieren als das, was ich mir vorgestellt habe. – Jarrod