0

trans と blocktrans を取得してテキストを翻訳することに成功しました。

でも...

現在の言語に変換する必要がある文字列を含む辞書を返す utils.py で定義された関数があります。EDIT:*これは、プロジェクトディレクトリに作成したutils.pyで、ビューによって呼び出されてdictで特定の補助機能を実行し、更新されたdictを返します

私はこのようなことをしました:

    try:
     path = default_storage.save(customercode + '/' + file.name, ContentFile(file.read()))
     results['status'] = 'success'
     results['message'] = _(u'Your file has been successfully uploaded')        
    except Exception as e:
     results['status'] = 'error'
     results['message'] = _(u'There was an error uploading your file: ') + str(e)

return results

私も追加しましたfrom django.utils.translation import ugettext_lazy as _ to the top of this utils.py file..

そして、この「結果」ディクショナリは私のビューの 1 つで使用され、さらに処理を行った後のディクショナリ全体がコンテキスト変数としてテンプレートに渡されます。

.po ファイルで翻訳を正しく設定しました。他のすべてのテンプレート タグは完全に変換されます。上記の文字列のみが翻訳されません。

どんな助けでも大歓迎です。

更新: フォーム ファイルのラベルで同じプロセスを試したところ、問題なく翻訳されました。翻訳されないのは前述の領域だけです。

PS: これは、stackoverflow に関する私の最初の質問です。この質問をするのに間違いを犯した場合は、事前にお詫び申し上げます。

4

1 に答える 1

0

予想通り、

私は非常にばかげた間違いを犯していました。変換された値を印刷しようとしているときに、テンプレート内の間違った変数にアクセスしました! >_<

しかし、私が学んだことの 1 つは、問題から離れて、長い時間の後に戻ってくることだと思います。問題をもう一度学習する必要があり、それがこのようなばかげたバグを見つけるのに役立つ場合があります。

于 2012-06-12T21:58:59.493 に答える