2016-09-04 4 views
1

Djangoインストールを使用して電子メールで送信するHTMLテンプレートがあります。私はテンプレートの内容を翻訳しようとしています(私はi18nを読み込み、すべての文字列はpoファイルにあります)。Djangoで電子メールテンプレートを翻訳する

私は次のコードを持っている:デバッグの理由から

htmly = get_template(self.html_content) 
self.values_dict['LANGUAGE_CODE'] = 'es' 
d = Context(self.values_dict) 
html_content = htmly.render(d) 
process_mail.delay(subject=self.subject, message=self.message, 
        from_email=self.from_email, 
        recipient_list=self.recipient_list, 
        html_content=html_content, 
        html_type=self.html_type, 
        attaches=self.attaches, mass=mass) 

を、私はまた、テンプレートにこれを入れている:

{% get_language_info for LANGUAGE_CODE as lang %} 
Language code: {{ lang.code }}<br /> 
Name of language: {{ lang.name_local }}<br /> 
Name in English: {{ lang.name }}<br /> 
Bi-directional: {{ lang.bidi }} 
Name in the active language: {{ lang.name_translated }} 

Language code: es 
Name of language: español 
Name in English: Spanish 
Bi-directional: False Name in the active language: 

を出力し、あなたが知っていますか私は何を間違えているのですか?

+0

コンテンツをレンダリングする場所を教えてください – sr3z

答えて

1

実際にどこでも翻訳を有効にしているようではありません。 LANGUAGE_CODE変数として文字列「es」を送信するだけです。翻訳を実際に行うには、make that language the active one

from django.utils import translation 
translation.activate('es') 
関連する問題