私の Django アプリは、エンコーディング ルールの適用が非常に緩いデータベースで動作します。emdash (Windows-1252 文字セットでは 0x97) のようなものを誰かがデータベースに保存すると、これが問題を引き起こします。Django アプリがそのデータを読み込んで utf-8 としてレンダリングしようとすると、0x97 が有効な utf-8 バイト シーケンスではないため (継続命令のように見える)、DjangoUnicodeDecodeError が発生します。
これらのエラーをキャッチして修正する賢い方法を知っている人はいますか? データベースはさまざまなアプリケーションからのデータを受け入れるので、それらが適切に機能し、適切なものだけをそこに入れるかどうかはわかりません。