Question

Comme le titre l'indique, j'essaie de faire fonctionner un simple e-mail avec Heroku et Rails 3.J'utilise ce guide Heroku : http://devcenter.heroku.com/articles/smtp

Voici mon code :

J'ai généré un mailer qui ressemble à ceci :

class Invite < ActionMailer::Base
  def signup_notification(user)
    recipients "#{user.first_name} <#{user.email}>"
    from       "Test"
    subject    "Please activate your new account"
    sent_on    Time.now
    body       :var => 'testing'
  end
end

J'ai une vue dans app/views/invite/signup_notification.rhtml

MISE À JOUR: je vois ça .rhtml ne fonctionne pas avec Rails 3 alors j'ai juste essayé .html.erb mais j'ai eu le même erreur.

Your account has been created.
Username: 
Password: 
Visit this url to activate your account:

Ensuite, dans la console Heroku, j'ai fait ceci :

user = User.new(:first_name => 'Me', :email => 'me@hotmail.com', :login => 'me', :password => '1234')

et puis ceci :

Invite.deliver_signup_notification(user)

et si j'obtiens cette erreur :

Net::SMTPSyntaxError: 501 Syntax error
  /user/ruby1.8.7/lib/ruby/1.8/net/smtp.rb:930:in `check_response`
  /user/ruby1.8.7/lib/ruby/1.8/net/smtp.rb:899:in `getok`
  /user/ruby1.8.7/lib/ruby/1.8/net/smtp.rb:828:in `mailfrom`
  /user/ruby1.8.7/lib/ruby/1.8/net/smtp.rb:653:in `sendmail`

Merci pour toutes les idées.

Était-ce utile?

La solution

Ton from est invalide.Essayez plutôt depuis 'test@example.com'.

Autres conseils

Si vous souhaitez afficher une chaîne personnalisée dans from alors vous pouvez utiliser quelque chose comme

from  "Test <info@domain.com>"

et lorsque vous envoyez un e-mail, le titre sera Test

Le guide Heroku concerne Rails <3.0.Utilisez le Guide des rails pour 3.0.

Net::SMTPSyntaxError 501 une erreur est générée si vous avez une mauvaise adresse d’expéditeur.L'adresse de l'expéditeur doit être une adresse e-mail.Tout faux e-mail fera également l’affaire.comme:abc@fakemail.com

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top