2011-03-14 56 views
0
require 'digest' 
class UserMailer < ActionMailer::Base 

    def receive_compliment(compliment) 
    @recipients = "#{compliment.receiver.email}" 
    @from  = SERVICE_EMAIL 
    @subject  = "Nouveau compliment de #{compliment.user.to_str}" 
    @sent_on  = Time.now 
    @compliment = compliment  
    @content_type = "text/plain" 
    @body[:url] = user_compliments_url(@compliment.receiver) 
    @body[:root_url] = root_url(:host)  
    end 

end 

嗨,夥計們。爲什麼我通過使用delayed_job發送郵件時得到兩個http://

如上所示。這是發送郵件的代碼。 我用UserMaililer.send_later("deliver_receive_complimen",compliment)發送郵件。 和發送郵件,但是,當我打開郵件,我得到了這樣的事情:

Bonjour Kamil , 

vous a envoyé un compliment sur Blanee! 

Cliquez ici pour afficher l’expéditeur et ses commentaires sur vous : 
http://http://feature.blanee.net/membres/compliments/66 

Merci, 
L'équipe Blanee 
________________ 
Ce mail est à l'attention de Kamil B.. 
Vous voulez contrôler les notifications que vous recevez? Veuillez vous rendre sur : http://http://feature.blanee.net/mon-compte/notifications. 
Vous ne vous êtes pas inscrit sur Blanee et vous avez reçu ce mail? Veuillez le signaler en envoyant un email à l'adresse suivante : [email protected] 

正如你看到的上面。有兩個http://,任何人的幫助?我測試過了。如果我直接發送郵件,那麼只有一個HTTP://,但是當我把它用delayed_job的則顯示了兩個http:///

我的ERB模板文件:

Bonjour <%="#{@compliment.receiver.first_name.to_s.strip},"%> 

<%=h(@compliment.user.to_str)%> vous a envoyé un compliment sur Blanee! 

Cliquez ici pour afficher l’expéditeur et ses commentaires sur vous : 
<%[email protected]%> 

Merci, 
L'équipe Blanee 
________________ 
Ce mail est à l'attention de <%[email protected]%>. 
Vous voulez contrôler les notifications que vous recevez? Veuillez vous rendre sur : <%[email protected]_url%>mon-compte/notifications. 
Vous ne vous êtes pas inscrit sur Blanee et vous avez reçu ce mail? Veuillez le signaler en envoyant un email à l'adresse suivante : [email protected] 

而事實上,我試着在模板文件中寫入* _url。但從delayed_job發送時它仍然存在錯誤。

+0

ERB文件在哪裏 – Zabba 2011-03-14 15:44:53

+0

嗨,Zabba。感謝您的回覆。 – dexterdeng 2011-03-14 16:32:16

+0

這裏是我的erb模板文件。 – dexterdeng 2011-03-14 16:32:34

回答

1

在Action Mailer中使用寧靜的URL時,應該在郵件程序中使用:host參數生成url。以下是否適合你?

Cliquez ici pour afficher l’expéditeur et ses commentaires sur vous : 
<%= user_compliments_url(@compliment.receiver, :host => 'feature.blanee.net') %> 

一定要離開http://關閉:host