`
kyoleelqh
  • 浏览: 17753 次
  • 性别: Icon_minigender_1
  • 来自: 广东汕头
最近访客 更多访客>>
社区版块
存档分类
最新评论

使用Gmail Smtp 发送email (rails2.0)

阅读更多
ActionMailer是一个简单的Rails组件,应用程序可以借助它来收发电子邮件。
Gmail--你必须有一个账号和密码,没有的话快去申请http://mail.google.com/mail/signup

邮件配置:
在enviroment.rb文件中:
ActionMailer::Base.server_settings = {
  :address => "smtp.gmail.com",
  :port => 587,
  :authentication => :plain,
  :user_name=> "gmail­_account",
  :password => "gmail_password"
}

如果按照上面的配置,一般邮件发送会不成功,因为gmail需要ssl方式来登录,ruby的lib中Net:SMTP TLS不支持,所以我们必须去下载一个plugin :
cd /my_rails_app/vendor/plugins
svn export https://openrain.com/opensource/public/rails/plugins/action_mailer_tls action_mailer_tls
为什么不用script/plugin install,我也不知道

下载成功之后,在config/initializers文件夹create一个ruby文件:smptp_gmail.rb
require "smtp_tls" #刚才下载的文件
mailer_config = File.open("#{RAILS_ROOT}/config/mailer.yml")
mailer_options = YAML.load(mailer_config)
ActionMailer::Base.delivery_method = :smtp
ActionMailer::Base.default_charset = "utf-8"
ActionMailer::Base.smtp_settings = mailer_options

然后在config文件夹create一个yml文件:mailer.yml
:address: smtp.gmail.com
:port: 587
:user_name: gmail­_account
:password: gmail_password
:authentication: :plain

最后就可以script/generate mailer MyMailer send
class MyMailer < ActionMailer::Base
  def send
    recipients = 'receiver email address' #接收者email地址
    from = 'your email address' #发送者email地址
    subject = 'i love ruby on rails'
    body[:account] = 'selina'
  end
end

开始发送: script/console
MyMailer.create_send #建一个email对象
MyMailer.deliver_send #发送email

最最最后:
其实把email stmp的配置文件写成一个yml文件的好处在于,如果你要改变stmp服务器的配置,直接再写一个yml文件就可以,比如A.yml , B.yml , C.yml ......
然后再File.open("#{RAILS_ROOT}/config/X.yml")

或者你觉得麻烦,也可以直接在enviroment.rb文件中:
require 'smtp_tls'
ActionMailer::Base.delivery_method = :smtp
ActionMailer::Base.default_charset = "utf-8"
ActionMailer::Base.server_settings = {
  :address => "smtp.gmail.com",
  :port => 587,
  :authentication => :plain,
  :user_name=> "my_gmail­_account",
  :password => "my_gmail_password"
}


去看看原文吧:http://www.danielfischer.com/2008/01/09/how-to-use-gmail-as-your-mail-server-for-rails/
分享到:
评论
1 楼 ashchan 2008-03-30  
FYI: Rails 2中应该用ActionMailer::Base.smtp_settings。

相关推荐

    好用的rails 2.0 Api 文档

    Rails 2.0 API 文档是一个非常宝贵的资源,它为开发者提供了全面的指南,以便于在使用Ruby on Rails 2.0版本时更好地理解和利用其框架功能。Ruby on Rails(简称Rails)是一个开源的Web应用框架,它遵循MVC(模型-...

    Ruby on Rails 2.0的新特性介绍

    Rails 2.0允许根据模板文件的扩展名自动选择渲染引擎,比如`show.rhtml.erb`表示使用ERB(Embedded Ruby)来渲染`show.rhtml`模板。这提供了更多的灵活性,让开发者可以针对不同格式的输出定制视图。 除此之外,...

    rails2.0的配置方法

    ### Rails 2.0 的配置方法 #### 一、引言 Rails 2.0作为Ruby on Rails(简称ROR)框架的一个重要版本,在Web开发领域具有不可忽视的地位。本篇将详细介绍Rails 2.0的配置过程及注意事项,帮助初学者快速上手并深入...

    ruby on rails2.0本地安装包

    这个“ruby on rails2.0本地安装包”适用于Windows和Linux操作系统,特别是针对网络速度较慢的用户设计,方便他们离线安装Rails 2.0.2版本。 在Rails 2.0版本中,有几个关键性的改进和特性: 1. **ActiveRecord**...

    Rails2.0资料

    Rails 2.0对此进行了优化,使得该方法变得更加可靠且易于使用。 - **自定义验证规则**:除了内置的验证规则外,Rails 2.0还支持用户自定义验证逻辑,这为开发者提供了更大的灵活性。 ##### 1.2 查询缓存 - **查询...

    rails2.0下实现《rubyonrails》中的mybook实例

    总之,`sqlite3.def`和`sqlite3.dll`文件对于在Rails 2.0中使用SQLite数据库至关重要。它们提供了Rails应用与SQLite数据库通信的桥梁,使我们能够在开发过程中轻松管理和操作数据。通过配置Gemfile,设置数据库配置...

    jRuby On Rails WEB2.0

    《jRuby on Rails WEB2.0》:将Ruby on Rails融入Java平台的实践指南 《jRuby on Rails WEB2.0》是一部由Ola Bini撰写的书籍,深入探讨了如何将Ruby on Rails这一敏捷开源框架与Java平台相结合,以构建高效、灵活的...

    Apress - Practical JRuby on Rails Web 2.0 Projects (Sep 2007)

    《JRuby on Rails Web 2.0 实用项目》 英文PDF + 源码

    Rails API 文档

    Rails 2.0版本在当时是一个重要的里程碑,引入了许多新特性并优化了已有的功能。 在Rails API文档中,你可以找到关于以下关键知识点的详尽解释: 1. **路由(Routing)** Rails的路由系统将HTTP请求映射到控制器的...

    rails 2.0.2 分页 需另外下载插件

    在Ruby on Rails框架中,`Rails 2.0.2`是一个较早的版本,而分页功能在那个时期并不像现在的Rails应用那样内置在框架内。为了实现分页,开发者通常需要安装并使用第三方插件,比如"will_paginate"。这个插件允许你在...

    JRuby on Rails Web 2.0 Projects

    ### JRuby on Rails Web 2.0 Projects:将Ruby on Rails引入Java平台 #### JRuby简介 JRuby是一种Ruby语言的实现,它运行在Java平台上,利用了Java虚拟机(JVM)的强大功能。JRuby使得开发人员能够在Java环境中使用...

    Advance RAils Reciples

    《Advanced Rails Reciples》作为Rails领域的经典续作,由Brad Ediger撰写,并在2008年出版,涵盖了Rails 2.0版本的新特性及高级用法。本书不仅适合已经有一定Rails基础的开发者进阶学习,也适合希望深入了解Rails...

    the rails way

    Rails,即Ruby on Rails,是一种使用Ruby语言构建的开源Web应用框架,遵循Model-View-Controller(MVC)架构模式。它由David Heinemeier Hansson设计并开发,首次发布于2005年。Rails 2.0版本在2007年底发布,带来了...

Global site tag (gtag.js) - Google Analytics