我的环境是ruby1.8.7, rails 2.3.5
(1)在environment.rb 加上
config.action_mailer.delivery_method = :smtp
config.action_mailer.default_charset = "UTF-8"
config.action_mailer.raise_delivery_errors = true
config.action_mailer.perform_deliveries = true
config.action_mailer.smtp_settings = {
:enable_starttls_auto => true, #不然会出现如下错误530 5.7.0 Must issue a STARTTLS command first. i6s
:address => "smtp.163.com", #使用的邮件服务器
:port => 25, #邮件服务器的端口号
:domain => "163.com", #暂时忽略
:authentication => :login, #不是很清楚,照着写
:user_name => "xxx@163.com", #使用邮件服务器的帐号(这里是google,所以时goole邮箱的帐号)
:password => "xxx" #使用邮件服务器的密码(这里是google,所以时goole邮箱的密码)
#注意: 这里我只是指定了邮件服务器,不是说我指定了google的邮件服务器,就非要使用google的邮箱发送邮件,也可以使用别的邮箱通过google的邮件服务器发送
}
(2)
ruby script/generate mailer order
打开model/order.rb
class Order < ActionMailer::Base
def confirm()
@subject = "hello World"
@body = {'name' => 'dsa'}
@recipients = 'xxx@163.com'
@from = 'xxx@163.com'
@headers = {}
end
end
同时在viwers里创建对应的confirm.rhtml
车车你妹啊
(3)任意打开一个controller
在里面加入
def send_mail
Order.deliver_confirm()
render :text => "success!"
end
(4)输入地址htto://localhost:3000/controllerName/send_mail,rails就会把confirm.rhtml的内容发送到邮箱
(5)既然方法已经写出来了,其它就剩下自己改了..如密码激活,订单通知之类都是浮云了..当然最好把body部分改为可以直接修改,而不是改页面,那就更好了...
分享到:
相关推荐
- **测试邮件发送**:确保应用中的邮件发送功能能够正常工作。 - **测试文件上传**:对于涉及文件上传的功能,需要编写专门的测试来验证其行为。 - **测试时间**:由于应用可能依赖于时间计算,因此需要测试与时间...
邮件发送是许多应用的重要功能,该部分专门讲解了如何测试邮件发送器,确保邮件能够按预期发送。 十一、其他测试方法 除了内置的测试机制外,该指南还提到了其他流行的测试方法和插件,比如RSpec和Capybara,这些...
3. **actionmailer-2.1.0.gem**:ActionMailer使得在Rails应用中发送和接收电子邮件变得简单。它提供了一个抽象层,可以方便地创建、发送和接收邮件,同时处理SMTP服务器的配置和其他邮件相关的设置。 4. **...
本章首先介绍了测试的重要性,并逐步指导读者如何为Rails应用编写单元测试。通过实际案例,读者可以学习到如何使用RSpec和Capybara等测试工具来确保代码的质量。 #### 三、登录功能开发 ##### 3.1 用户登录系统 ...
通过简单的示例,读者可以了解如何使用 Rails 命令行工具创建新的项目,并部署第一个页面。此外,还会涉及到基本的路由配置和控制器的编写方法。 - **创建新项目**:使用 `rails new` 命令创建一个新的 Rails 项目...
8. **Testing**:Rails内置了测试框架,如RSpec和Test::Unit,鼓励开发者采用TDD(测试驱动开发)和BDD(行为驱动开发)方法。 9. **Gemfile和Bundler**:Gemfile用于定义项目依赖的Ruby gems,Bundler则管理这些...
- **邮件发送**: - 发送账户激活链接、密码重置邮件等。 - 可以使用诸如 Action Mailer 这样的 Rails 内置组件。 #### 十一、API 设计 第十三章深入探讨了 **API 设计**,这是现代 Web 应用的关键组成部分。 - ...
3. 克隆或下载Rails 4.2.0项目的源代码,或者创建一个新的Rails项目,使用`rails new my_app -d sqlite3`命令,其中`my_app`是你的应用名,`-d sqlite3`指定使用SQLite数据库。 4. 进入项目目录,运行`bundle ...
ActionMailer的改进,便于发送邮件;以及支持部分渲染,提高了视图层的性能。此外,2.2.x版本还增强了路由系统,引入了资源路由和命名空间,使得路由配置更加灵活和模块化。 在使用这个开发环境包时,开发者可以...
- **周五**:学习过滤器、缓存机制、路由规则、RESTful API设计、邮件发送功能、插件使用、ActiveSupport组件等。 #### 七、扩展主题 除了基础知识之外,本书还将探讨一些高级主题,如: - **Ruby语言**:深入理解...
- **发送邮件**:指导如何使用ActionMailer发送邮件。 - **接收电子邮件**:说明如何配置应用接收电子邮件。 - **ActionMailer回调**:介绍ActionMailer中的回调机制。 - **使用ActionMailer辅助方法**:展示如何...
2. **模型(Models)**:Rails 使用 Active Record,这是一个 ORM(对象关系映射)库,允许开发者用 Ruby 代码操作数据库。模型定义数据结构、关联、验证和业务逻辑。 3. **视图(Views)**:视图负责展示数据,...
- Devise初始化:通过运行命令rails generate devise:install来配置应用程序,包括设置邮件发送配置等。 - 用户模型集成:使用rails generate devise MODEL_NAME来为用户模型添加Devise认证功能。 - 配置邮件发送...
15. **ActionMailer**:Rails内置了ActionMailer,用于发送电子邮件。可以用来处理注册确认、密码重置等场景。 通过研究Depot项目,你可以深入了解Rails的工作原理,掌握Web开发的基本流程,并提升你的Ruby on ...
配置好ActionMailer后,我们可以在消息创建时触发邮件发送。 此外,考虑到性能和可扩展性,文章可能还会提到使用队列服务,如ActiveJob(Rails内置的抽象层)与后台任务处理库如Sidekiq或Resque配合,来异步处理...
在Ruby on Rails框架中,我们经常使用ActionMailer模块来处理邮件发送。LetterOpener可以很好地与ActionMailer集成,作为其强大的调试工具。 在压缩包子文件的文件名称列表中,“letter_opener-master”可能表示这...
它们可以提供额外的行为或服务,如认证系统、邮件发送服务等。 - **Rails** 插件通常作为一个独立的项目来管理,可以方便地添加到任何 **Rails** 应用中。这种方式有助于分离关注点,并促进了社区之间的资源共享。 ...