2013-07-11 16 views
0

我對ROR完全陌生。我正在嘗試創建一個簡單的應用程序來創建和發送附件在rails 4.0.0中的電子郵件。用戶應該能夠將圖像嵌入到電子郵件中。電子郵件正在被髮送,圖像也被上傳,但在這個過程中它被破壞,所以收件人無法看到它。 任何人都可以提出解決這個問題的辦法嗎?我的郵件在rails中上傳電子郵件中的圖像4.0.0

代碼:

class UserMailer < ActionMailer::Base 
    default :from => "[email protected]"  

    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 

回答

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")) 

,或者,如果你想保持它在公衆場合,同樣的事情,但改變路線

+0

嘗試它.. nt wrkn :( – user2536488

+0

你檢查了圖像的路徑是否正確?嘗試將它添加到你的項目並使用'Rails.root'來找到它。例如:'File.read(「#{Rails .root} /public/images/rails.png「)' – NicoSantangelo

+0

L等我知道編輯是否有幫助。 – NicoSantangelo