次の属性を持つモデル「イベント」があります。
desc = models.TextField(blank=True, null=True)
モデルのインスタンスを保存すると、左の二重引用符が「\u201c」になるなど、特殊文字が Unicode に変換されるようです。後で、テンプレートで {{ event.desc }} を参照します (問題なく動作します) が、テンプレートを文字列にレンダリングすると、「UnicodeEncodeError」が発生します。コンテキストとして、API に投稿するために、単純な HTML を文字列にレンダリングしようとしています。
テンプレートのレンダリング方法:
description = render_to_string('event_description.html', {'event': self})
結果のエラー:
UnicodeEncodeError: 'ascii' codec can't encode character u'\u201c' in position 845: ordinal not in range(128)
render_to_string が ascii にエンコードされないようにする方法、またはこのエラーを防ぐより適切な方法はありますか?