Ruby on rails 跟踪用户每月的下载量

Ruby on rails 跟踪用户每月的下载量,ruby-on-rails,paperclip,Ruby On Rails,Paperclip,我想跟踪个人用户下载统计数据,我使用RubyonRails插件回形针处理上传,文件存储在本地服务器上,我不使用S3 每个文件都有一个唯一的名称,长度为26个字符,属于一个用户,因此无论谁下载该文件,下载的GB都将从相应的用户帐户中获取。这取决于您存储文件的位置。如果它们在public目录中,那么当有人请求它时,它不会经过Rails堆栈,所以这里唯一的方法是读取服务器日志,或者通常它取决于您使用的服务器,您应该在那里寻找问题的答案 否则,若您通过控制器提供文件,那个么在控制器中的处理过程中,您应该

我想跟踪个人用户下载统计数据,我使用RubyonRails插件回形针处理上传,文件存储在本地服务器上,我不使用S3


每个文件都有一个唯一的名称,长度为26个字符,属于一个用户,因此无论谁下载该文件,下载的GB都将从相应的用户帐户中获取。

这取决于您存储文件的位置。如果它们在
public
目录中,那么当有人请求它时,它不会经过Rails堆栈,所以这里唯一的方法是读取服务器日志,或者通常它取决于您使用的服务器,您应该在那里寻找问题的答案

否则,若您通过控制器提供文件,那个么在控制器中的处理过程中,您应该知道哪个用户正在发出此请求,哪个文件正在被请求。然后,您可以使用如下字段将每个下载请求存储在特殊的表中:
user\u id、file\u id、file\u size
或类似的内容,或者只向用户模型中的字段添加一些值,例如添加到
total\u downloads
字段。第一种解决方案更好,因为您确切地知道下载了哪些文件以及下载时间


当然,您将不知道用户是否停止下载文件,并且在下载开始时它将说明整个文件的大小

我强烈建议通过控制器发送文件,这样您就可以更好地控制这个过程,正如klew所提到的。