2012-04-13 16 views
1

Nach den answer on How to define custom configuration variables in rails zu verwenden, Ich versuche, eine Konfigurationseinstellung für verschiedene Umgebungen in config/environments/{env}.rbRails 3 - wie eine umgebungsspezifische Konfiguration in haml Teil

zum Beispiel zur Einrichtung in development.rb stelle ich

config.elvis = 'alive'

und dann in meiner haml Vorlage kann ich diese Variable verwenden, z.B.

Elvis is #{Rails.configuration.elvis}.

Allerdings, wenn ich in einem Zustand, dies wickeln will:

- if Rails.configuration.elvis 
    <p>Elvis is #{Rails.configuration.elvis}</p> 

es funktioniert auch, aber wenn die Konfiguration nicht gesetzt ist, wirft es einen undefined method Fehler.

Wenn ich versuche, statt:

- if defined? Rails.configuration.elvis 
    <p>Elvis is #{Rails.configuration.elvis}</p> 

es scheint immer zu bewerten als falsch, auch bei der Konfiguration definiert.

noch sehr neu auf Schienen/Rubin, so entschuldigen, wenn es eine sehr dumme Frage

Antwort

3

Sie respond_to? verwenden:

- if Rails.configuration.respond_to?(:elvis) 
    <p>Elvis is #{Rails.configuration.elvis}</p> 
+0

Vielen Dank für die superschnelle Antwort! Arbeitete wie ein Zauber (wird in etwa 7 Minuten als beantwortet markiert, wenn ich erlaubt bin ...) – gingerlime

Verwandte Themen