簡體   English   中英

ActionMailer自動電子郵件。 Ruby on Rails

[英]ActionMailer automatic emails. Ruby on Rails

為我們的支持團隊建立一個“票務系統”,以便他們可以在客戶打電話和提出要求時創建票證。

我的工作量很大,現在,每次為應用程序創建票證時,我都需要向該票證分配的人發送電子郵件。 此信息全部在數據庫中,可以輕松訪問。

你們對我如何執行此建議或我可以使用的任何文檔有任何建議嗎?

謝謝!

看看這個Railscast上手你的郵件- http://railscasts.com/episodes/206-action-mailer-in-rails-3

基本上,在工單create方法中,您要呼叫郵件程序並傳遞分配人的電子郵件,以便每次創建工單時都會發送一封電子郵件。

# Model
class Ticket

  ...
  after_create: :send_email
  ...

  def send_email
    Mailer.delay_for(5.minutes).send_ticket(id, assigned_to.id) # delay sending e-mail
    Mailer.send_ticket(id, assigned_to.id).deliver # or send it now..
  end
end

class Mailer < ActionMailer::Base

  def send_ticket(ticket_id, assigned_to_id)
    @assigned_to = User.find(assigned_to_id)
    @ticket = Ticket.find(ticket_id)
    mail(
      from: 'you<do-not-reply@your_domain.com>',
      to: @assigned_to.email,
      subject: 'new assignment'
    )
  end
end

這主要是邏輯,現在為視圖添加以下文件app/views/mailer/send_ticket.html.haml

Hey #{@assigned_to.name},
%p you have been assigned to a new ticket #{@ticket.id}
%p here is the link to the ticket #{@ticket.url}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM