`
fireflyman
  • 浏览: 118288 次
  • 性别: Icon_minigender_1
  • 来自: 火星
社区版块
存档分类
最新评论

用rails实现简单邮件发送测试

    博客分类:
  • ROR
阅读更多
我的环境是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 测试Rails 程序.pdf

    - **测试邮件发送**:确保应用中的邮件发送功能能够正常工作。 - **测试文件上传**:对于涉及文件上传的功能,需要编写专门的测试来验证其行为。 - **测试时间**:由于应用可能依赖于时间计算,因此需要测试与时间...

    Ruby on Rails Guides_ A Guide to Testing Rails Applications.pdf

    邮件发送是许多应用的重要功能,该部分专门讲解了如何测试邮件发送器,确保邮件能够按预期发送。 十一、其他测试方法 除了内置的测试机制外,该指南还提到了其他流行的测试方法和插件,比如RSpec和Capybara,这些...

    rails本地安装包完整版

    3. **actionmailer-2.1.0.gem**:ActionMailer使得在Rails应用中发送和接收电子邮件变得简单。它提供了一个抽象层,可以方便地创建、发送和接收邮件,同时处理SMTP服务器的配置和其他邮件相关的设置。 4. **...

    RailsSpace

    本章首先介绍了测试的重要性,并逐步指导读者如何为Rails应用编写单元测试。通过实际案例,读者可以学习到如何使用RSpec和Capybara等测试工具来确保代码的质量。 #### 三、登录功能开发 ##### 3.1 用户登录系统 ...

    Beginning Rails 4

    通过简单的示例,读者可以了解如何使用 Rails 命令行工具创建新的项目,并部署第一个页面。此外,还会涉及到基本的路由配置和控制器的编写方法。 - **创建新项目**:使用 `rails new` 命令创建一个新的 Rails 项目...

    ruby on rails api

    8. **Testing**:Rails内置了测试框架,如RSpec和Test::Unit,鼓励开发者采用TDD(测试驱动开发)和BDD(行为驱动开发)方法。 9. **Gemfile和Bundler**:Gemfile用于定义项目依赖的Ruby gems,Bundler则管理这些...

    Rails 3 in Action

    - **邮件发送**: - 发送账户激活链接、密码重置邮件等。 - 可以使用诸如 Action Mailer 这样的 Rails 内置组件。 #### 十一、API 设计 第十三章深入探讨了 **API 设计**,这是现代 Web 应用的关键组成部分。 - ...

    rails-4.2.0-gems

    3. 克隆或下载Rails 4.2.0项目的源代码,或者创建一个新的Rails项目,使用`rails new my_app -d sqlite3`命令,其中`my_app`是你的应用名,`-d sqlite3`指定使用SQLite数据库。 4. 进入项目目录,运行`bundle ...

    ruby on rails 开发环境包(ruby1.8.7,rails2.2.3)

    ActionMailer的改进,便于发送邮件;以及支持部分渲染,提高了视图层的性能。此外,2.2.x版本还增强了路由系统,引入了资源路由和命名空间,使得路由配置更加灵活和模块化。 在使用这个开发环境包时,开发者可以...

    ruby on rails 101

    - **周五**:学习过滤器、缓存机制、路由规则、RESTful API设计、邮件发送功能、插件使用、ActiveSupport组件等。 #### 七、扩展主题 除了基础知识之外,本书还将探讨一些高级主题,如: - **Ruby语言**:深入理解...

    Ruby on Rails 指南 v5.0.1 中文版

    - **发送邮件**:指导如何使用ActionMailer发送邮件。 - **接收电子邮件**:说明如何配置应用接收电子邮件。 - **ActionMailer回调**:介绍ActionMailer中的回调机制。 - **使用ActionMailer辅助方法**:展示如何...

    rails 2.2.2 API

    2. **模型(Models)**:Rails 使用 Active Record,这是一个 ORM(对象关系映射)库,允许开发者用 Ruby 代码操作数据库。模型定义数据结构、关联、验证和业务逻辑。 3. **视图(Views)**:视图负责展示数据,...

    Rails3 device and cancan

    - Devise初始化:通过运行命令rails generate devise:install来配置应用程序,包括设置邮件发送配置等。 - 用户模型集成:使用rails generate devise MODEL_NAME来为用户模型添加Devise认证功能。 - 配置邮件发送...

    ruby on rails 实例depot

    15. **ActionMailer**:Rails内置了ActionMailer,用于发送电子邮件。可以用来处理注册确认、密码重置等场景。 通过研究Depot项目,你可以深入了解Rails的工作原理,掌握Web开发的基本流程,并提升你的Ruby on ...

    Messaging with Rails

    配置好ActionMailer后,我们可以在消息创建时触发邮件发送。 此外,考虑到性能和可扩展性,文章可能还会提到使用队列服务,如ActiveJob(Rails内置的抽象层)与后台任务处理库如Sidekiq或Resque配合,来异步处理...

    Ruby-LetterOpener在浏览器中预览邮件代替发送

    在Ruby on Rails框架中,我们经常使用ActionMailer模块来处理邮件发送。LetterOpener可以很好地与ActionMailer集成,作为其强大的调试工具。 在压缩包子文件的文件名称列表中,“letter_opener-master”可能表示这...

    rails2

    它们可以提供额外的行为或服务,如认证系统、邮件发送服务等。 - **Rails** 插件通常作为一个独立的项目来管理,可以方便地添加到任何 **Rails** 应用中。这种方式有助于分离关注点,并促进了社区之间的资源共享。 ...

Global site tag (gtag.js) - Google Analytics