Ruby-GetText初体験その3【日本語を使うぞ宣言】
その1【インストールしてみる】
その2【英語のアプリをまず作成】
その3【日本語を使うぞ宣言】
その4【require 'gettext/rails' と init_gettext】
その5【ファイルをUTF-8で日本語書き換え】
その6【po ファイルと mo ファイル】
前回、やっとこさ英語版のアプリが出来たところで、今度は、Rails のソースに、これから日本語を使いますよ、という記述をします。
(まだ、Ruby-GetText を使うよ、という記述はしていませんし、今回のブログエントリでも記述しません。次回に期待!!)
この手順は、前に書いた日本語(UTF-8)を使うための準備と同じです。
というわけで、文字コードは、UTF-8 限定です。Shift_JIS や EUC-JP の場合どうやるかは・・・分かりません。
では、行きます。
1.config/environment.rb に UTF-8 使うよー、日本語ライブラリ使うよー、と記述
ファイルの先頭に書き加えます。
$KCODE = 'u'
require 'jcode'
2.データベース自体を UTF-8 に設定
これは前回やりました。
3.config/database.yml に UTF-8 使うよー、と記述
赤字の部分を書き加えます。インデントは、半角スペースでね!今回書いたのは、development: だけですが、本当は、test: にも production: にも同じく encoding: utf8 を付け加えなければなりません。
development:
adapter: mysql
database: MyFirstJapanese_development
username: root
password:
socket: /var/lib/mysql/mysql.sock
encoding: utf8
4.ブラウザに返すヘッダに UTF-8 使うよー、と記述
今回、scaffold で view ファイルを作りました。どこに head タグがあるかというと、
app/views/layouts/book_mng.rhtml
です。このファイルを書き換えます・・・と思ったら、↓のように、もともと UTF-8 を使用するヘッダが付いていましたので変更なしで済みます。
<head>
<meta http-equiv="content-type" content="text/html;charset=UTF-8" />
<title>BookMng: <%= controller.action_name %></title>
<%= stylesheet_link_tag 'scaffold' %>
</head>
はい、これで日本語をブラウザに出力したり、DB に書き込んだりしても大丈夫になりました。
次回は、いよいよ Ruby-GetText を require します。
【広告】