#>, 它是通过用户表单上传的。 我正在尝试将其附加到电子邮件中: ... attachments[@attachment.ori-6ren">
gpt4 book ai didi

ruby-on-rails - 在 Rails 中将临时文件附加到电子邮件时出错

转载 作者:数据小太阳 更新时间:2023-10-29 07:30:37 28 4
gpt4 key购买 nike

@attachment 中有文件。从调试:

"datafile"=>#<ActionDispatch::Http::UploadedFile:0x3eee9c0        @original_filename="filename.jpg",
@content_type="image/jpeg",
@headers="Content-Disposition: form-data; name=\"datafile\"; filename=\"filename.jpg\"\r\nContent-Type: image/jpeg\r\n",
@tempfile=#<File:C:/Users/.../RackMultipart20121026-2452-g369hf>>,

它是通过用户表单上传的。

我正在尝试将其附加到电子邮件中:

...
attachments[@attachment.original_filename] = @attachment
mail(:to => "email@email.com", :subject => "test", :from => @fromaddress)

哪些错误:

undefined method `length' for #

我也试过

attachments[@attachment.original_filename] = @attachment.tempfile

哪些错误:

undefined method `[]' for #<Tempfile:0x5629e48>

@attachment.original_filename 返回正确的文件名(例如“filename.jpg”)

有什么明显的吗?

最佳答案

除非你将上传的文件保存到某个地方,否则你可以用它做什么(出于安全原因 - 你应该验证上传然后存储文件)。

但是您应该能够读取文件:

attachments[@attachment.original_filename] = @attachment.read

注意:我还没有测试过这个,也许你需要从@attachment.tempfile

中读取

关于ruby-on-rails - 在 Rails 中将临时文件附加到电子邮件时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13092987/

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