2011-01-20 9 views
1

IDをダウンロードする個々のユーザーを追跡するようにIDはアップロードを処理するRuby on Railsプラグインクリップを使用しており、ファイルはローカルサーバーに保存されます。ユーザーが月にダウンロードする量を追跡します

各ファイルには、ユーザーに属する26文字の固有の名前が付けられています。そのファイルをダウンロードしても、ダウンロードされたGBは対応するユーザーアカウントから取得されます。

答えて

2

ファイルを保存する場所によって異なります。それらがpublicディレクトリにある場合、誰かがリクエストすると、Railsスタックを経由しないので、ここで唯一の方法はサーバーログを読み込むことです。一般に、使用しているサーバーによって異なります。あなたの質問のために。

コントローラでファイルを処理する場合は、コントローラで処理中に、どのユーザがこの要求を行っているのか、どのファイルが要求されているのかを知る必要があります。次に、各ダウンロード要求を特別なテーブルに格納して、user_id, file_id, file_sizeなどのフィールドを追加するか、ユーザーモデルのフィールドに値を追加します(例:total_downloadsフィールド)。どのファイルがいつダウンロードされたのかを正確に把握しているため、最初のソリューションが優れています。

もちろん、ユーザーがファイルのダウンロードを停止したかどうかは分かりません。また、ダウンロードの開始時にファイルサイズ全体が考慮されます。

+0

私は強く推薦されているように、あなたがプロセスをよりコントロールできるように、コントローラ経由でファイルを送信することを強くお勧めします。 – jschorr

関連する問題