<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

    上一遍已經介紹了簡單的rails發送mail 的demo,這個demo介紹rails發送text/html格式的郵件

    預覽:

    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://m.tkk7.com/fl1429">http://m.tkk7.com/fl1429</a>
    Thanks

    5,發送郵件

    http://localhost:3000/findpassword/index

    注意點

    1,使用text/html格式發送郵件,不是通過@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不起到作用,我還苦于在網上沒找到結果,突然我發現時如此的簡單,一般郵件都自帶設置發件人名稱的功能(在個人賬戶處),例如gmail的是下圖這樣設置的:

    image

    126的是這樣設置的:

    image

    收到郵件后就是這樣了,發件人處就是現實自己設置的名稱:

    image



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

    評論:
    # re: Rails Send Mail Demo2[未登錄] 2009-05-18 19:04 | tingting
    Findpassword.deliver_contact(recipient, subject, message)
    我用的時候發現沒有這個方法哦,只有這個deliver方法呢  回復  更多評論
      
    # re: Rails Send Mail Demo2 2009-05-19 10:21 | fl1429
    deliver_contact contact方法在model里,send mail調用的時候必須這么寫!  回復  更多評論
      
    已訪問數:
    free counters
    主站蜘蛛池模板: 亚洲国产国产综合一区首页| 亚洲一日韩欧美中文字幕在线| 91九色老熟女免费资源站 | 亚洲xxxx视频| 免费a级毛片18以上观看精品| 女人体1963午夜免费视频| 国产成人精品日本亚洲专区6| 亚洲精品综合久久| 精品无码免费专区毛片| 日日狠狠久久偷偷色综合免费| 精品亚洲成a人片在线观看少妇 | 最近高清中文字幕免费| 亚洲av纯肉无码精品动漫| 亚洲男人第一av网站| 免费国产成人高清视频网站| 88xx成人永久免费观看| 五月天婷婷免费视频| 亚洲综合校园春色| 亚洲国产精品特色大片观看完整版| 性一交一乱一视频免费看| a级毛片在线免费| 国产亚洲蜜芽精品久久| 亚洲男女性高爱潮网站| 综合久久久久久中文字幕亚洲国产国产综合一区首 | 999国内精品永久免费观看 | 亚洲日韩人妻第一页| 无人在线观看免费高清视频| 日本免费久久久久久久网站| 黄色a三级免费看| 亚洲日韩精品无码专区加勒比☆| 亚洲阿v天堂在线| 国产亚洲av片在线观看18女人 | 青青草a免费线观a| 久久久久国产精品免费网站| 国产99久久久久久免费看| 亚洲乱码国产乱码精华| 亚洲国产成人精品青青草原| 久久精品国产亚洲AV麻豆王友容| 亚洲性久久久影院| 成人亚洲综合天堂| 国产成人免费a在线资源|