2015-09-10 76 views
0

我试图通过使用tempfile将pdf保存到S3。我确信PDF正在被正确创建,因为我使用相同的代码来发送PDF文件。Rails将tempfile保存到S3

文件正在保存到S3,但它是空的。

pdf由CombinePDF.new创建 - 所以,pdf包含pdf数据。

这是我的代码:

@file = Tempfile.new('costprojectspdf') 
@file.write(pdf) 
@obj = @bucket.objects.create("costprojects.pdf", @file.read) 

是@ file.read是否正确? 我需要@ file.close吗?

感谢您的帮助!

+0

你不需要'@ file.write(PDF)' –

+0

PDF是PDF对象。我怎样才能将这些数据存入临时文件? – Reddirt

+0

为什么'文件'为什么'Tempfile'? –

回答

1

如果pdf是原始数据,那么这应该是罚款:

@obj = @bucket.objects.create("costprojects.pdf", pdf.to_pdf) 
+0

:必须以字符串,路径名,文件或响应#read和#eof的对象的形式提供数据? – Reddirt

+0

我也试过pdf.to_s – Reddirt

+0

所以,我想,我必须首先将它保存为文件,然后保存到S3。 – Reddirt

相关问题