O'Reilly logo

Learning Rails by Edd Dumbill, Simon St. Laurent

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 17. Mail in Rails

Rails is mostly a web application framework, but there are many connections that are better made through email. Rails includes a gem, ActionMailer, that lets your application send and receive email messages. Whether email is just something you use to confirm user accounts, or send notifications, or is at the heart of your application, ActionMailer is the key to connecting your Rails application to email.

Warning

ActionMailer is built into Rails, but it has its own way of doing things, dating back to much earlier iterations of Rails. It supports models with views but not controllers, for instance, making it difficult to see how method calls connect to results. The best way to deal with this—for now—is to accept that ActionMailer is a somewhat different part of Rails, and keep careful track of where it puts its pieces.

Sending Text Mail

Text-based email is a good foundation for sending messages from Rails. Some people simply prefer text email, but in any case it’s the simplest way to get going, minimizing the already fairly large set of pieces that need to be coordinated for Rails to send email messages. Awards typically come with certificates to be handed out, so sending an email will be a good way to show Rails’ mailing functionality.

Setup

ActionMailer is only one of the components you need to send email to and from Rails. Unfortunately, it’s the only part that this book can explain in depth, because every mail setup on every server has its structure and its ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required