2

オンラインで生成された一時画像を提供する必要があるDjangoプロジェクトを開発しています。セッションは匿名にする必要があります。誰でもサービスを利用できるはずです。セッションが期限切れになるか閉じると、イメージは破棄されます。

しかし、最善のアプローチが何であるかはわかりません。たとえば、ファイルベースのセッションを使用して、セッション フォルダーで画像を生成するように設定するだけで、それらの画像はセッションと共に破棄されます (または、少なくとも破棄する必要があります)。データベース セッションでも同様のことができると思います。たとえば、画像をデータベースに保存したり、セッションが終了したときに画像を削除したりできますが、ファイルベースのソリューションの方が信頼性が高いように思えます。

それは良い解決策ですか、それともより確実な代替手段はありますか?

4

1 に答える 1

0

セッション キーのハッシュに基づいて一時イメージに名前を付け、次のような管理コマンドを作成します。

  1. 現在のすべてのセッションの潜在的な一時ファイル名ハッシュを含むリストを作成します。
  2. 一時ディレクトリ内の現在のすべてのファイル名のリストを取得します
  3. ハッシュリストに一致するエントリがないファイル名を削除します

セッションが「閉じられた」かどうかを確実に知る方法はないため、cleanupこのコマンドの前に管理コマンドを使用するか、関数を使用してこの新しいコマンドの一部として暗黙的に実行することができcall_command()ます。

于 2009-08-05T03:49:33.853 に答える