Home

Preview Emails in Rails

Rails 4.1 introduced the ability to preview email messages from your mailers without sending an email. Learn how ...

As of Rails 4.1, you can now preview emails while developing (without sending an email). Let's say you have a mailer that looks like this:

app/mailers/notification_mailer.rb

class NotificationMailer < ActionMailer::Base

def welcome(user)
@user = user
mail :to => user.email, :from => 'me@mydomain.com',
:subject => 'Welcome!'
end

end

To preview it, create a file in test/previews and call the mailer method just as you would from any model or controller in your app.

test/previews/notification_preview.rb

class NotificationPreview < ActionMailer::Preview

def welcome
NotificationMailer.welcome(User.first)
end

end

Then you can preview the email at [/rails/mailers/notification/welcome](http:// rails/mailers/notification/welcome).

Notice the preview route matches the preview class name and then preview method, which doesn't necessarily need to be related to the mailer itself.

Also note the preview filename is appended with _preview.

Let's Connect

Keep Reading

Related Content (without metadata) in Rails using tf-idf

Sometimes metadata isn't available. Other times you don't want to rely on it. Here's a method for finding related content using term frequency / inverse document frequency.

Oct 12, 2014

A has_many Relationship within a Single Model in Rails

Here are a couple methods for dealing with uni-directional many-to-many associations in Rails.

Apr 04, 2015

Disable Rake Commands in a Rails Project

Sometimes you want to disable some of the default rake tasks in a rails project. Here's a quick way to do just that.

May 15, 2015