Dotenvは.envの値をRubyの組み込み変数「ENV」に格納してくれます。
ENV自体はHashのようなインターフェイス(keyとかvalueとか)を持っています。
しかし、数値を格納できないという欠点があります。
仮に.envに数値を入れとしても
> Dotenv.load => {"USER_NAME"=>"Den2Taro", "PASSWORD"=>"Unique and Exciting Campus", "SENSOR"=>"123"}
のように、文字列に置換されます。
.to_iすりゃいいのですが、どうにも面白くありません。
実は、Kernelクラス内蔵のloadメソッドを使うとこの問題は何とかなってしまいます。
>> load './.env' => true >> p USER_NAME "Den2Taro" => "Den2Taro" >> p SENSOR 123 => 123
ファイル名は指定できるのでyaml形式でloadする事も可能です。
その上、requireと違いloadは何度でもリロードできます。
たまに値が変わる設定ファイル系はこの手法で呼ぶのも手ですね。