ピラミッド アプリケーションで行っているテストで、JSON 経由で翻訳可能なテキストを送信しようとしていますが、翻訳が機能していません。ファイルの先頭で、翻訳文字列関数をインポートしています。
from pyramid.i18n import TranslationString as _
次に、次のコードを検討してください。
@view_config(route_name='transtest', renderer='json')
def transtest_view(request):
return { 'myvar': _('temp-test', default='Temporary test', domain='myapp') }
しかし、私が得るものは次のとおりです。
{"myvar": "temp-test"}
レンダラーをテスト テンプレートに変更した場合、次のようにしたことに注意してください。
@view_config(route_name='transtest', renderer='../templates/transtest.pt')
...
その後、テキストは正しく翻訳されます (カタログの初期化、更新、コンパイルなどは既に行っていることに注意してください)。
これにより、「json」レンダラーで TranslationString クラスが正しく機能しないと思いましたか? もしそうなら、JSON 経由で翻訳可能な文字列を送信するにはどうすればよいですか?
前もって感謝します