在控制器(ApplicationMailer)中的S3上打开远程映像 – 没有这样的文件或目录@ rb_sysopen

我正在尝试打开通过Paperclip上传到S3的个人资料图片,以便将其作为电子邮件的在线附件提交。

虽然我收到错误:

No such file or directory @ rb_sysopen 

这是我的一些代码:

 attachments.inline['profilepic'] = File.read(profilepic) 

profilepic是一个绝对的URL(以//mybucket.S3-eu-west …..开头)到S3的图像(当粘贴到导航栏上时,它只是完美地显示图像)

我尝试使用open-uri进行以下操作,但同样的错误

 require 'open-uri' attachments.inline['profilepic'] = open(profilepic) 

像你一样,你需要先:

 require 'open-uri' 

然后做:

 uri = URI("http:"+profilepic.to_s) attachments["profilepic"] = open(uri).read