0

私たちの Web アプリケーションでは、常に再発する問題に取り組んでいます。簡単な例はブログ投稿です。タイトル、リード、本文テキスト、および画像があります。UX デザイナーは、ユーザーが画像を非同期でアップロードできるようにしたいと考えています。これは、新しい投稿を作成するときに問題になります。まだ永続化されていないため、ID がない (たとえば、画像のパスに ID を使用する場合) か、画像の場所をデータベースの列として配置できません。

ユーザーが画像をアップロードするブログ投稿用の「tmp」フォルダーを作成することもできますが、ユーザーが投稿を保持しない場合はどうしますか? それともいつ戻ってきますか?別のユーザーが画像をアップロードして新しい投稿を作成した場合はどうなりますか?

この問題に関する適切な方法はありますか? 私たちのアプリは php で書かれていますが、これは問題ではないと思います。

4

2 に答える 2

1

ファイルストレージに S3 を使用していますが、コンセプトは同じです。

  1. 参照を使用して、アップロード用のアプリのデータベースにエントリを作成しますnull。エントリへの参照はフォームに送り返され、ユーザーが送信する準備ができたときに一緒に投稿されます。

  2. cron は定期的に実行され、X 時間後に参照が null であるアップロード/レコードを削除します。

このようにすると、ファイルの場所を気にすることなく、複数のフロントエンドにアプリを簡単にデプロイできます。

于 2012-08-06T14:03:19.877 に答える
0

永続化されていない期限切れのイメージを消去するスクリプトを作成し、cron などを使用して定期的に実行するようにスケジュールします。

于 2012-08-06T14:03:44.850 に答える