Creating and Sending Mail
1.CREATE A Notice MAILER
rails g mailer NoticeMailer decomp_change
create app/mailers/notice_mailer.rb
invoke erb
create app/views/notice_mailer
create app/views/notice_mailer/decomp_change.text.erb
app/mailers/notice_mailer.rb
class NoticeMailer < ActionMailer::Base
default from: "from@example.com"
def decomp_change
@greeting = "Hi"
mail to: "to@example.org"
end
end
Sending Attachments in Mail
class NoticeMailer < ActionMailer::Base
default from: "from@example.com"
def decomp_change (notice)
@notice = notice
@last_tweet = @notice.tweets.last
attachments['z.pdf'] = File.read("#{Rails.root}/public/notice.pdf")
mail to: @notice.email, subject: 'Your decomp stage has changed'
end
end
2.MAILER VIEWS
app/views/notice_mailer/decomp_change.text.erb
Greetings <%= @notice.name %>,
Your decomposition state is now <%= @notice.decomp %> and your
last tweet was: <%= @last_tweet.body %>
Good luck!
app/views/notice_mailer/decomp_change.html.erb
<h1>Greetings <%= @notice.name %>,</h1>
<p>Your decomposition state is now <%= @notice.decomp %> and your
last tweet was: <%= @last_tweet.body %></p>
<%= link_to "View yourself", notice_url(@notice) %>
3.SENDING MAIL
app/models/notice.rb
class Notice < ActiveRecord::Base
after_save :decomp_change_notification, if: :decomp_changed?
private
def decomp_change_notification
noticeMailer.decomp_change(self).deliver
end
end
4.config
config/environments/development.rb
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
:address => "smtp.gmail.com",
:port => 587,
:user_name => 'poshboytl',
:password => ENV['GMAIL_PASS'],
:authentication => 'plain',
:enable_starttls_auto => true
}
reference:
http://railscasts-china.com/episodes/how-to-send-emails-in-rails
分享到:
相关推荐
《Rails 3 in Action》是2011年由Ryan Bigg撰写的一本关于Ruby on Rails框架的权威指南,专门针对当时最新的Rails 3.1版本进行了深入解析。这本书旨在帮助开发者充分利用Rails 3.1的强大功能,提升Web应用开发的效率...
### Rails 4 in Action, 第二版:关键知识点解析 #### 一、Rails 4简介与新特性 **Rails 4 in Action, 第二版** 是一本深入介绍Ruby on Rails框架的专业书籍。该书由Ryan Bigg、Yehuda Katz、Steve Klabnik和...
Rubyisms in Rails
### Ruby on Rails 2.1 新特性详解 #### 引言 自2004年7月David Heinemeier Hansson公开发布Ruby on Rails框架以来,这一轻量级且功能强大的Web开发框架迅速赢得了全球开发者们的青睐。经过三年多的发展与优化,在...
WeChat in Rails 的 API、命令和消息处理
唔,1分应该还是有人下的吧,共同学习进步,Ruby on Rails is an open source web framework.... "Rails 4 in Action" is a fully-revised second edition of "Rails 3 in Action." This hands-on, compreh...
### Rails 101 入门电子书知识点详解 #### 一、简介 《Rails 101 入门电子书》是一本非常适合初学者直接入门的书籍,它由xdite编写并出版于2014年6月10日。本书主要针对的是希望学习Ruby on Rails框架的读者,特别...
《Rails101_by_rails4.0》是一本专注于Rails 4.0.0版本和Ruby 2.0.0版本的自学教程书籍,它定位于中文读者,旨在成为学习Rails框架的参考教材。Rails(Ruby on Rails)是一个采用Ruby语言编写的开源Web应用框架,它...
roadie-rails, 使HTML电子邮件适合 Rails rockstars roadie 使HTML电子邮件适合 Rails rockstars 。这里 gem 将 Rails 应用程序与Roadie钩子,以帮助你生成HTML电子邮件。安装将这个 gem 添加到你的Gemfile,
Ruby on Rails,通常简称为Rails,是一个基于Ruby编程语言的开源Web应用框架,遵循MVC(Model-View-Controller)架构模式。这个“Rails项目源代码”是一个使用Rails构建的图片分享网站的完整源代码,它揭示了如何...
We still start with a step-by-step walkthrough of building a real application, and in-depth chapters look at the built-in Rails features. This edition now gives new Ruby and Rails users more ...
Rails 3.1 和 Cucumber-Rails 1.2.0 是两个在Web开发领域非常重要的工具,尤其对于Ruby on Rails框架的测试和自动化流程。本文将深入探讨这两个组件,以及它们如何协同工作来增强软件开发的效率和质量。 首先,...
标题 "Rails" 指的是 Ruby on Rails,一个开源的Web应用程序框架,它基于Ruby编程语言,遵循MVC(模型-视图-控制器)架构模式。Rails由David Heinemeier Hansson在2004年创建,其设计理念是强调代码的简洁性、DRY...
从给定的文件信息来看,我们正在探讨的是一本关于Ruby on Rails的书籍,书名为《Simply Rails2》,作者是Patrick Lenz。本书旨在为初学者提供深入理解Ruby on Rails框架的指南,从基础概念到高级主题均有涵盖,是...
Rails指南中文版是针对Ruby on Rails框架的一份详尽教程,旨在帮助开发者深入理解并熟练掌握这个强大的Web应用开发工具。Ruby on Rails(简称Rails)是一个基于Ruby语言的开源Web应用框架,它遵循MVC(Model-View-...