我目前正在尝试一种名为" gmail"的新宝石。我正在尝试发送带有附件文件的消息,但我似乎每次都会遇到此错误:
没有这样的文件或目录@ rb_sysopen - /uploads/upload/avatar/4/filename.png
我附加此图片的代码行如下所示:
def send_message
params = message_params
u = Upload.create(avatar: params[:file])
u.save!
# puts "Upload: #{u.avatar}\nLocation: #{Rails.root.join(u.avatar.url)}"
email = @gmail.compose do
to "#{params[:to]}"
subject "#{params[:subject]}"
body "#{params[:message]}"
add_file "#{Rails.root.join(u.avatar.url)}"
end
email.deliver!
flash[:success] = 'Message sent!'
Upload.destroy_all
redirect_to root_path
end
请帮助我已经坚持了几个小时。
答案 0 :(得分:0)
显然路径缺乏......设法通过改变路径来解决它:
path = "#{Rails.root}" << "/public" << u.avatar.url