<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-167  評論-65  文章-0  trackbacks-0

    上一遍已經(jīng)介紹了簡單的rails發(fā)送mail 的demo,這個demo介紹rails發(fā)送text/html格式的郵件

    預(yù)覽:

    image

    步驟:

    1,看我上遍的介紹安裝smtp_tls,然后在environment.rb最后中添加

    ActionMailer::Base.default_content_type = "text/html"

    2,model

    class Findpassword < ActionMailer::Base 
      def contact(recipient, subject, message)
        @subject = subject
        @recipients = recipient
        @from = 'no-reply@yourdomain.com'
        @sent_on = Time.now
          @body["title"] = 'This is title'
        @body["email"] = 'sender@yourdomain.com'
        @body["message"] = message
        @headers = {}
       # @headers = {content_type => 'text/html'}
      end
    end

    3,controller

    class FindpasswordController < ApplicationController
      def index
          render :file => 'app\views\findpassword\index.rhtml'
       end
      def sendmail
        email = params["email"]
          recipient = email["recipient"]
          subject = email["subject"]
          message = email["message"]
        puts recipient + subject + message
        Findpassword.deliver_contact(recipient, subject, message)
        return if request.xhr?
        render :text => 'Email send successfully'
      end

    end

    4,view

    views/findpassword/index.rhtml

    <h1>Send Email</h1>
    <% form_tag :action => 'sendmail' do %>
    <p><label for="email_subject">Subject</label>:
    <%= text_field 'email', 'subject' %></p>
    <p><label for="email_recipient">Recipient</label>:
    <%= text_field 'email', 'recipient' %></p>
    <p><label for="email_message">Message</label><br/>
    <%= text_area 'email', 'message' %></p>
    <%= submit_tag "Send" %>
    <%  end   %>

    views/findpassword/contact.rhtml

    Hi!
    You are having one email message from <font color="red"><%= @email %></font><br/>
    with a tilte <font color="red"><%= @title %></font><br/>
    and following is the message:
    <font color="red"><%= @message %></font><br/>
    please visit  website:
    <a href="http://www.tkk7.com/fl1429">http://www.tkk7.com/fl1429</a>
    Thanks

    5,發(fā)送郵件

    http://localhost:3000/findpassword/index

    注意點

    1,使用text/html格式發(fā)送郵件,不是通過@headers起到效果的,而是通過ActionMailer::Base.default_content_type = "text/html" 配置

    2,body部分可以

      @body["title"] = 'This is title'
        @body["email"] = 'sender@yourdomain.com'
        @body["message"] = message

    這么寫,也可以按照我上遍那樣寫成hash格式的

    3,還記得上一遍說道@from不起到作用,我還苦于在網(wǎng)上沒找到結(jié)果,突然我發(fā)現(xiàn)時如此的簡單,一般郵件都自帶設(shè)置發(fā)件人名稱的功能(在個人賬戶處),例如gmail的是下圖這樣設(shè)置的:

    image

    126的是這樣設(shè)置的:

    image

    收到郵件后就是這樣了,發(fā)件人處就是現(xiàn)實自己設(shè)置的名稱:

    image



    write by feng
    posted on 2009-05-04 18:40 fl1429 閱讀(973) 評論(2)  編輯  收藏 所屬分類: Rails

    評論:
    # re: Rails Send Mail Demo2[未登錄] 2009-05-18 19:04 | tingting
    Findpassword.deliver_contact(recipient, subject, message)
    我用的時候發(fā)現(xiàn)沒有這個方法哦,只有這個deliver方法呢  回復(fù)  更多評論
      
    # re: Rails Send Mail Demo2 2009-05-19 10:21 | fl1429
    deliver_contact contact方法在model里,send mail調(diào)用的時候必須這么寫!  回復(fù)  更多評論
      
    已訪問數(shù):
    free counters
    主站蜘蛛池模板: 国精无码欧精品亚洲一区| 亚洲女人被黑人巨大进入| 内射少妇36P亚洲区| 免费久久人人爽人人爽av | 日本亚洲欧美色视频在线播放| 国产精品视频永久免费播放| ww亚洲ww在线观看国产| 99久久免费精品国产72精品九九| 精品日韩99亚洲的在线发布| 免费av欧美国产在钱| 亚洲欧洲无码AV不卡在线| 国产一级大片免费看| 91精品国产免费网站| 亚洲综合小说久久另类区| 国拍在线精品视频免费观看| 亚洲精品无码久久久久秋霞| 免费一级毛片不卡不收费| a级毛片免费观看在线| 亚洲AV一宅男色影视| 日韩视频在线精品视频免费观看| 亚洲乱码国产乱码精华| 国产成人亚洲影院在线观看| 免费无码黄网站在线看| 亚洲视频国产精品| 国产成人高清精品免费鸭子 | 亚洲五月激情综合图片区| 91情侣在线精品国产免费| 亚洲av无码一区二区三区四区| 亚洲无码精品浪潮| 久久99精品视免费看| 日韩亚洲国产高清免费视频| 亚洲成网777777国产精品| 最近免费中文字幕mv电影| 青青青亚洲精品国产| 亚洲AV日韩AV天堂久久| 好大好硬好爽免费视频| 成年大片免费视频播放一级| 亚洲黄色高清视频| 亚洲国产婷婷综合在线精品| 久久久久高潮毛片免费全部播放| 亚洲av无码一区二区三区天堂|