1. Create the Mailer
rails generate mailer UserMailer
2. create user:- app/mailer/user_mailer.rb
rails generate mailer UserMailer
2. create user:- app/mailer/user_mailer.rb
def welcome_email(user) @user = user @url = 'http://example.com/login' mail(to: @user.email, subject: 'Welcome to My Awesome Site') end
3. create view:- app/view/user_mailer/welcome_email.html.erb <html> <head> <meta content='text/html; charset=UTF-8' http-equiv='Content-Type' /> </head> <body> <h1>Welcome to example.com, <%= @user.name %></h1> <p> You have successfully signed up to example.com, your username is: <%= @user.login %>.<br> </p> <p> To login to the site, just follow this link: <%= @url %>. </p> <p>Thanks for joining and have a great day!</p> </body></html>
4. add_email smtp setting:- config/environments/development
config.action_mailer.perform_deliveries = true
config.action_mailer.raise_delivery_errors = true
config.action_mailer.default_options = {from: 'localhost:3000'}
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
address: 'smtp.gmail.com',
port: 587,
domain: 'localhost',
user_name: 'testing.bittern@gmail.com',
password: 'zzzzzzzzz',
authentication: 'plain',
enable_starttls_auto: true }
5. send_email:-
UserMailer.welcome_email(User.first)
No comments:
Post a Comment