2

私たちは非同期のpythonアプリケーション(テレグラムボット)を持っており、ローカライゼーションを追加したい:ユーザーがボットとダイアログを開始するときに言語を選択し、ボットは彼のためにすべてのメッセージを翻訳する。非同期Pythonテレグラムのローカライゼーション

Djangoはリクエストごとに別々のプロセスを作成するため、リクエストごとに言語を変更することができます。通常は動作しています。しかし、非同期ボットでは動作しません。プロセスは1つしかありません。異なる言語の複数のユーザーを処理する必要があります。

簡単なこと - データベースにユーザーの設定を保存し、受信メッセージごとにDBから優先言語を読み込み、この設定をすべての内部関数に渡します。しかし、ボットは複雑でそこにはかなり複雑です数十を超える関数呼び出しを含めることができます。

どのように非同期アプリケーションで言語切り替えをエレガントな方法で実装できますか?

答えて

0

私たちはwithを使用して、すべての内部関数呼び出しにコンテキストを提供する問題を解決しました。