Is it any way to do disable email delivery in development mode?
Kind regards.
Is it any way to do disable email delivery in development mode?
Kind regards.
You can test which environment is currently running and not send the email in development. See env (Rails) - APIdock
Colin
Is their any way to add code in development.rb file and i can disable email delivery?
Hi,
development.rb is environment specific file. It wont work when you run application in production mode. So if you want to have access to single file which you want to run in all the modes, better have the mailer code in environment.rb / application.rb file with environment conditions as said in previous mail.
Thank you.
If you set
config.action_mailer.delivery_method = :test
in development.rb
Then no emails will get send (assuming you don’t have something somewhere else (for example in an initializer) that overrides that. A nice development tool is mailcatcher - it runs a fake smtp server for you, you set your app to connect to localhost:1025 in development, eg
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {:address => “localhost”, :port => 1025}
And all the email your app sends shows up in a web app you can access at localhost:1080
Fred
I use GitHub - pboling/sanitize_email: An Email Condom for your Ruby Server to force all emails to be sent to one pre-defined email address.
I am looking for this type of answer. Thank you very much.
Kind regards.
Just do in development.rb config file:
config.action_mailer.perform_deliveries = false
I recommend using the letter opener gem. it’s fantastic for development - check it out:
Take a look at this Railscast - #61 Sending Email (revised) - RailsCasts
It explains how to use letter_opener.