2011-12-07 10 views
0

Rails 3でグローバル定数を定義したいと思いますが、私はGoogleで多種多様な答えを探しています。グローバル定数をRails 3に配置する場所

私はthis solutionをしようとしていたが、それはうまくいきませんでしたとエラーが発生しました:

Undefined method `music_type' for #<Rails::Application::Configuration:0xb7ac0230> 
/config/application.rbで

module RailsRoot 
Class Application < Rails :: Application 
config.music_type = '2' 
end 
end 
コントローラ

RailsRoot::Application::config.music_type 

ないかわから私は間違っている。あなたはそのための専用の宝石が必要

おかげ

+0

それが働いて...私は再起動するのを忘れサーバ – Viral

答えて

1

を持っているように、最善の方法はconfig/initializers/フォルダにあなた自身の初期化子を定義することです。

例:

次の内容のconfig/initializers/フォルダにmy_initializer.rbを作成します:定数こと

require 'socket' 

def local_ip 
    orig, Socket.do_not_reverse_lookup = Socket.do_not_reverse_lookup, true # turn off  reverse DNS resolution temporarily 

    UDPSocket.open do |s| 
    s.connect '64.233.187.99', 1 
    s.addr.last 
    end 
ensure 
    Socket.do_not_reverse_lookup = orig 
end 

SERVER_IP = local_ip 

と、いくつかのコントローラの使用中:

log_it "Server IP address is: #{SERVER_IP}" 
関連する問題