2011年1月28日金曜日

web2py日本語

問題:login, password, emailなどのweb2pyで表示する基本的なフレーズを日本語にしたい。

内容:
基本的にTに渡された文字列は翻訳の対象になって、
各国語の利用ができるようにLanguageファイルが用意されている。
開発コンソールの「language」に各国語がリストされている。残念ながら日本語、ja.pyがない。ja.pyファイルはオリジナル文字列(Tで囲まれた文字列)と翻訳が対になったファイルである。
解決策:
そこでファイルja.pyを作成して、Languagesの下にある「update all languages」をクリックすれば、すべてのTで囲まれた文字列が出てくる想定であった。


想定違いの問題:
、Loginとかregisterのオリジナル文字列がこのファイルに現れない。どういう事の次第か、開発したアプリケーションのTの文字列が出現する。
たとえばコントローラーのdefault/indexで最後に、
return dict(message=T('ソーシャル・スタイル・クラブにようこそ'))
とやるとTの括弧内が言語ファイルに出てくる。ところがweb2pyのパッケージのAuthenticationにある筈のLogin,registerが出ないのである。
解決策:
中国語の言語ファイルを見るとloginなどが中国語になっている。
そこでこのファイルをja.pyに複写して、これを日本語に変換してOKになりました。

この投稿は
http://www.vimeo.com/7520812
が参考になりました。

このビデオのなかのdb.pyの次の2行も気になります。

1 件のコメント:

  1. 中国語の言語ファイルは中国語を取り切るのが大変でした。
    web2pyの日本語のユーザーグループがありました。そこに日本語の言語ファイルがあります。
    url
    http://groups.google.com/group/web2py-japan
    です。

    返信削除