2009-05-16 9 views

Antwort

2

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.

+0

Danke. Das wird noch besser funktionieren als das, was ich mir vorgestellt habe. – Jarrod

2

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.

Verwandte Themen