gpt4 book ai didi

ruby-on-rails-3 - 在 Ruby on Rails 3 中检查 amazon S3 的文件夹大小

转载 作者:行者123 更新时间:2023-12-04 07:14:10 25 4
gpt4 key购买 nike

我正在使用回形针将文件发送到 S3,我想知道每个用户占用了多少空间。

对于每个用户,我有一个文件夹 user/:id/files/。

我可以在我的数据库中注册每个文件在保存时占用多少空间,但我更喜欢直接在 S3 上检查它,有简单的方法吗?

最佳答案

我不确定这算不算简单,请注意,我是根据文档执行此操作的,但是...

Paperclip 使用 aws-sdk,所以如果你像这样直接使用它:

size = 0

AWS::S3::Bucket.objects.each do |object| #object should be an S3Object
if object.metadata(name) =~ /user//:id//files/
size += object.content_length #in bytes
end
end

您应该以每个用户使用的总字节数结束。我唯一不确定的是对象/文件的 name 元数据的格式。根据this post名称应为 /user/:id/files/ 格式,但我不确定其他项目(例如 user)如何体现。

当你深入挖掘时,你可能会对此进行改进,但我认为总体思路就在那里。

我从这些链接中得到了这个:

AWSRubySDK

Bucket

Bucket.objects

S3Object

S3Object.metadata

S3Object.metadata(name)

S3Object.content_length

关于ruby-on-rails-3 - 在 Ruby on Rails 3 中检查 amazon S3 的文件夹大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11379895/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com