Je suis un peu nouveau sur ruby on rails, et j'ai lu de nombreux tutoriels à ce sujet, mais je n'arrive toujours pas à comprendre ce qui ne va pas.Comment envoyer des emails depuis ruby en utilisant un compte gmail, par exemple?
je l'ai déjà mis en place le environment.rb avec les lignes suivantes en bas:
ActionMailer::Base.delivery_method = :smtp
ActionMailer::Base.default_content_type = "text/html"
ActionMailer::Base.smtp_settings = {
:address => 'smtp.gmail.com',
:port => 25,
:domain => 'gmail.com',
:authentication => :login,
:user_name => '[email protected]',
:password => 'mypassword'
}
Ensuite, j'ai un code qui est venu avec le baseApp j'utilise, et effectue les opérations suivantes :
UserMailer.deliver_forgot_password(self)
où auto est l'objet utilisateur, qui contient l'e-mail, connexion, etc.
cette méthode (qui appartient à la classe UserMailer) a le code suivant:
def forgot_password(user)
setup_email(user)
@subject += "Forgotten password instructions"
#{user.password_reset_code}
@body[:url] = "http://#{Setting.get(:site_url)}/users/reset_password/#"
end
protected
def setup_email(user)
@recipients = "#{user.email}"
@from = "#{Setting.get(:support_name)} <#{Setting.get(:support_email)}>"
@subject = "[#{Setting.get(:site_name)}] "
@sent_on = Time.now
@body[:user] = user
# Get Settings
[:site_name, :company_name, :support_email, :support_name].each do |id|
@body[id] = Setting.get(id)
end
end
Eh bien, les e-mails sont très bien, je les ai déjà vérifié faire lever l'inspection, mais il ne ... envoyer et il ne me jette pas une exception non plus.
Maintenant, je reçois erreur Errno :: ECONNREFUSED lorsque vous essayez d'envoyer un e-mail. Quel est le problème maintenant?
Merci, Brian
Quelle version de rails utilisez-vous? – Mark
mm, si je fais un clic droit sur le projet, je vois Ruby Platform: Built-in JRuby 1.2.0. Est-ce que c'est ce que tu voulais savoir? –