Ich versuche, eine app in Rails 4.Rails 4 Devise & Mandrill E-Mails
Für die letzten 3 Jahre zu machen, ich habe zu kämpfen worden, um herauszufinden, devise/omniauth (Ich versuche immer noch zu bekommen es zu arbeiten).
Von den Hauptproblemen abgesehen, während ich versuche, den Willen zu finden, dies zu überleben, habe ich versucht, E-Mails mit Mandrill einzurichten.
Ich fand dieses Tutorial, das ich zu folgen versuchen: https://nvisium.com/blog/2014/10/08/mandrill-devise-and-mailchimp-templates/
Ich habe einen Mailer mandrill_devise_mailer.rb
class MandrillDeviseMailer < Devise::Mailer
def confirmation_instructions(record, token, opts={})
# code to be added here later
end
def reset_password_instructions(record, token, opts={})
options = {
:subject => "Reset your password",
:email => record.email,
:global_merge_vars => [
{
name: "password_reset_link",
# content: "http://www.example.com/users/password/edit?reset_password_token=#{token}"
content: "http://www.cr.com/users/password/edit?reset_password_token=#{token}"
},
{
name: "PASSWORD_RESET_REQUEST_FROM",
content: record.full_name
}
],
:template => "Forgot Password"
}
mandrill_send options
end
def unlock_instructions(record, token, opts={})
# code to be added here later
end
def mandrill_send(opts={})
message = {
:subject=> "#{opts[:subject]}",
:from_name=> "Reset Instructions",
# :from_email=>"[email protected]",
:from_email=>["PROD_WELCOME"],
:to=>
[{"name"=>"#{opts[:full_name]}",
"email"=>"#{opts[:email]}",
"type"=>"to"}],
:global_merge_vars => opts[:global_merge_vars]
}
sending = MANDRILL.messages.send_template opts[:template], [], message
rescue Mandrill::Error => e
Rails.logger.debug("#{e.class}: #{e.message}")
raise
end
end
Die Unterschiede zwischen der oben genannten und was sie im Tutorial getan haben sind:
In meiner Mail chimp mandrill Vorlage
, ich habe:<a href="*|password_reset_link|*">Change my password </a>
Wenn ich die E-Mail zum Zurücksetzen der Anweisungen erhalte, erhalte ich einen unterstrichenen Link zum Formular zum Ändern des Passworts, das besagt: "Ändern Sie mein Passwort daneben. Ich möchte "mein Passwort ändern, um das Etikett zu sein, das den Linktext verbirgt".
Kann jemand sehen, was ich falsch gemacht habe?
Ihre ': from_email' ist auf '[ "PROD_WELCOME"]', das wie eine E-Mail-Adresse schaut nicht auf mich. – VNO
Danke - Einstellung der ENV gemacht die E-Mail senden, aber es druckt die Worte zwischen den * || * anstatt die Variable – Mel
Vielleicht ziehen Sie Lenker als Ihre Standard-Merge-Sprache? Gehen Sie zu Ihrem Mandrill [Sendeoptionen] (https://mandrillapp.com/settings/sending-options) unter Einstellungen und prüfen Sie, ob Sie die richtige Zusammenführungssprache aktiviert haben. –