日々精進

新しく学んだことを書き留めていきます

Rails - 文字コード

・再び文字コードではまる。
Railsでdatetime型オブジェクトを文字列にして表示するとFeb 08 18みたいな
アメリカ式フォーマットになってしまうのでこれを日本式に直す方法を調べたところ
environment.rbに

ActiveSupport::CoreExtensions::Time::Conversions::DATE_FORMATS.merge!({
  :default => "%Y年%m月%d日 %H:%M:%S",
})

と書けばいいということが判明。
これを実行したが、日本語の部分が文字化け。
Rails文字コードセットがUnicodeでないことが原因ぽい。
Ruby on Railsの文字コード指定場所 (CodeZine編集部ブログ)を参考に文字コードUnicodeにしたところ、問題解決!
文字コード問題はほんとややこしいなあ。


Rubyの定数
Rubyは変数の先頭文字を大文字にすると定数として扱われるんだけど、
VB.netなんかと違って定数には基本データ型以外のオブジェクトも代入できるので使い勝手がいい。
ただ、他のクラスの定数を使うときにClass::CONSTのように書かないといけないのが×。この記法かっこわるいよねぇ。