我对ROR完全不熟悉。我正在尝试创建一个简单的应用程序来创建和发送带有附件的电子邮件在rails 4.0.0中。用户应该能够将图像嵌入到电子邮件中。电子邮件正在发送,图像也会上传,但在此过程中会损坏,因此收件人无法看到它。 任何人都可以建议解决这个问题?
我的邮件代码:
class UserMailer < ActionMailer::Base
default :from => "xyz@abc.com"
def registration_confirmation(user)
@user = user
attachments['rails.jpg'] = File.read('C:\Ruby\mail\public\images\rails.jpg')
mail(:to => "#{user.name} <#{user.email}>", :subject => "Image attachment")
end
end
答案 0 :(得分:1)
尝试:
def registration_confirmation(user)
@user = user
attachments['rails.jpg'] = File.read(Rails.root.join('public\images\rails.jpg'))
mail(:to => "#{user.name} <#{user.email}>", :subject => "Image attachment")
end
修改强>:
根据您的评论,我想这可能是图片的问题。检查rails.jpg
中是否存在YourRailsRoot/app/assets/images
图片,然后尝试使用:
File.read(Rails.root.join('app/assets/images/rails.jpg'))
或
File.open(File.join(Rails.root, "/app/assets/images/rails.png"))
或者,如果你想把它公之于众,那就是改变路线