查找子资源的总附件存储使用情况 - Paperclip Rails

sle*_*n36 0 sum ruby-on-rails paperclip nested-resources rails-activerecord

我的建筑内,所有型号的Rails应用程序Users,Album(如相册)和Photo嵌套的顺序.我希望能够找到用户相册使用的总存储空间.

Album关卡中,我可以找到该相册中照片使用的总存储空间.即:

album = Album.first

album.photos.sum(:image_file_size)
Run Code Online (Sandbox Code Playgroud)

但是,我希望能够从User所有专辑的照片水平上做到这一点.

这样做有一种优雅的方式吗?

谢谢!

bit*_*ien 5

假设每个User都有很多Albums,每个Album都有很多Photos.您可以User使用以下语句获得第一个使用的总存储空间.

User.find(1).albums.map(&:photos).flatten.pluck(:image_file_size).sum
Run Code Online (Sandbox Code Playgroud)