Ich arbeite an einer App, die eng in Mandrill integriert ist (MailChimp's transaktionaler E-Mail-Dienst) und ich versuche den Devise Mailer außer Kraft zu setzen, wenn ich den API-Aufruf an Mandrill sende Ich erhalte ihre E-Mail, aber Devise schickt mir auch eine E-Mail (die leer ist).Rails 3 Override Devise Mailer
Hier ist meine DeviseMailer
class MyDeviseMailer < Devise::Mailer
def reset_password_instructions(record)
mandrill = Mandrill::API.new("#{MandrillConfig.api_key}")
mandrill.messages 'send-template',
{
:template_name => 'Forgot Password',
:template_content => "",
:message => {
:subject => "Forgot Password",
:from_email => "[email protected]",
:from_name => "Company Support",
:to => [
{
:email => record.email
}
],
:global_merge_vars => [
{
:name => "FIRST_NAME",
:content => record.first_name
},
{
:name => "FORGOT_PASSWORD_URL",
:content => "<a href='#{edit_user_password_url(:reset_password_token => record.reset_password_token)}'>Change My Password</a>"
}
]
}
}
#We need to call super because Devise doesn't think we have sent any mail
super
end
end
Der Aufruf von super
ich hier gefunden: http://qnundrum.com/answer.php?q=254917
Ich dachte nur, aber haben Sie versucht, die 'config.mailer'-Option in ** devise.rb ** zu überschreiben? – Noz
Ich tat, Devise sendet immer noch die E-Mail, weil Sie am Ende Ihrer Überschreibung Super anrufen müssen – dennismonsewicz
Was passiert, wenn Sie den Anruf auf Super lassen? – mccannf