Django の国際化を理解するために、簡単な例を作成しようとしています。
私がdjangoprojectのドキュメントで読んだことから、それを行う最も簡単な方法は、テンプレートから翻訳したいものを{% trans %}
ブロックでラップすることです。
私が理解して期待していたことから、私の場合、文字列に対して翻訳が自動的に実行されることでした:
{% for x in found_bills %}
<tr>
<td>{% trans x.name %}
</td>
</tr>
{% endfor %}
そして、x.name の文字列 (英語での曜日の名前、つまり "sunday") が翻訳され、翻訳された形式で表示されたテンプレートに返されます。
私はそれが機能する方法を誤解しましたか?
アップデート:
エラー: _argparse.py ./build/ipython/IPython/external/argparse/_argparse.py:1113 で xgettext を実行中にエラーが発生しました: 警告: 名前のない引数を含む 'msgid' 形式の文字列を適切にローカライズできません: トランスレータは引数を並べ替えることができません. 名前付きの引数を持つフォーマット文字列と、引数のタプルの代わりにマッピングを使用することを検討してください。
2 番目の更新:
テンプレートからの HTML コードは上記のもので、次のコードはビュー内のものです。
bills.py:
def bills(request):
bills = ps_bill.objects.all()
return render_to_response('bills.html',"bills":bills,},context_instance=RequestContext(request))