Ben son 3 yıldır 4.Raylar 4, Devise & Mandrill e-postalar
Raylar bir uygulama yapmaya çalışıyorum, ben anlamaya mücadele oldum vasiyetle/omniauth (Hala almaya çalışıyorum çalışmak için).
Bu konuda yaşama isteğini bulmaya çalışırken ana sorunların bir kenara adım atması, Mandrill ile e-postaları kurmayı denedim.
buldum ben birlikte takip etmek çalışıyorum bu öğretici,: https://nvisium.com/blog/2014/10/08/mandrill-devise-and-mailchimp-templates/
Ben mandrill_devise_mailer.rb denilen bir posta var ve üstünde arasındaki
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
farklar ne öğretici yapmış şunlardır:
benim posta şempanze mandrill şablonunda, ben:
<a href="*|password_reset_link|*">Change my password </a>
Yönergeleri sıfırlamak için e-postayı aldığımda, parola değiştirme şifresi formunun altı çizili bir bağlantı görüyorum. 'Bağlantı metnini gizleyen etiket olmak için şifremi değiştir' istiyorum.
Neyi yanlış yaptığımı gören var mı? İşte
özel DeviseMailer yarattı nasıl Sizin ': from_email' bir e-posta adresi gibi görünmüyor [ "PROD_WELCOME"]' 'ayarlandığında ben mi. – VNO
Teşekkürler - ENV, e-postanın gönderilmesini sağladı, ancak – Mel
değişkenini çekmek yerine * || * arasındaki kelimeleri basıyordur Belki de varsayılan birleştirme diliniz olarak handlebar'ları kullanıyorsunuzdur? Ayarlar altında Mandrill'inize [gönderme seçenekleri] (https://mandrillapp.com/settings/sending-options) gidin ve doğru birleştirme dilinin etkin olup olmadığını kontrol edin. –