I need to get the path to the file on disk which is using ActiveStorage
. The file is stored locally.
When I was using paperclip, I used the path
method on the attachment which returned the full path.
Example:
user.avatar.path
While looking at the Active Storage Docs, it looked like rails_blob_path
would do the trick. After looking at what it returned though, it does not provide the path to the document. Thus, it returns this error:
No such file or directory @ rb_sysopen -
Background
I need the path to the document because I am using the combine_pdf gem in order to combine multiple pdfs into a single pdf.
For the paperclip implementation, I iterated through the full_paths of the selected pdf attachments and load
them into the combined pdf:
attachment_paths.each {|att_path| report << CombinePDF.load(att_path)}
blob_path
"upon access, a redirect to the actual service endpoint is returned. This indirection decouples the public URL from the actual one" so by design this will foil what you are doing. Perhaps investigate using the download option. – Handoutpath_for
that does what you're looking for but it is private. So using#send
to get the paths or going through the download-to-temp-files process seem to be the options. – Ashby