Flask アプリケーションをデプロイするために mod_wsgi で Apache2 を使用しています。
pydev を使用して Eclipse から実行すると (つまり、Eclipse の「実行」メニュー アイコンを使用して)、このアプリケーションは完全に機能します。
しかし、まったく同じコードが Eclipse の外部から実行されると (コマンド ラインからスクリプトを呼び出すか、mod_wsgi を介して)、aUnicodeDecodeError
が発生し、ページを表示できません。
問題のあるコードの(短縮された)部分は次のとおりです。
label = 'créer'
row = '<tr><td>{cell_label}</td></tr>'.format(cell_label = label)
render_template('template.html', row = row)
template.html には以下が含まれます。
<table>
{{ row | safe }}
</table>
発生したエラーは次のとおりです。
'<tr><td>{cell_label}</td></tr>'.format(cell_label = label)
UnicodeEncodeError: 'ascii' codec can't encode character u'\\xe9' in position 7: ordinal not in range(128)
その他の情報
echo $LANG
戻り値 :en_US.UTF-8
file flask_app.py returns
Python スクリプト、UTF-8 Unicode テキスト実行可能ファイル
Eclipse からコードを実行するときと、テストを実行するときに、同じインタープリター (virtualenv の python 2.7.3) を使用します。
編集
コードは Eclipse でしか実行できないという事実を反映して、質問のタイトルと説明を変更しました。