[英]How do I use JavaScript to send an email with the Rails 3 Action Mailer?
我正在使用Facebook Comments社交插件,我希望每次有人添加新評論時都能夠發送電子郵件。 過去,我曾使用Rails的Action Mailer發送電子郵件,但我不知道如何使它正常工作。
我正在監聽JavaScript事件FB.Event.subscribe('comment.create)
然后希望回調函數向ActionMailer發送AJAX請求以發送電子郵件。 我該怎么做呢?
JavaScript代碼:
FB.Event.subscribe('comment.create', commentMailer(response))
function commentMailer(response) {
//code to call function to send mail
}
Rails代碼:
class UserMailer < ActionMailer::Base
default :from => "<email address>"
def new_comment_email(user, ride)
@user = user
@ride = ride
emails = ride.users.collect {|user| user.email}
mail(:to => emails, :subject => "etc")
end
end
我可能只有一個隱藏表單,可以在commentMailer回調中提交。 它會在mailer_controller
控制器中執行一個動作,該動作會將郵件傳遞給所需的收件人。
隱藏表單的優點是您不必在JavaScript中創建要發布到的網址。
僅使用創建動作創建控制器。 將事件發布到該控制器的create動作中,該動作的唯一目的是調用ActionMailer並發送電子郵件。 您將能夠仔細檢查作為獎勵的服務器上發布的數據。
請記住,控制器不需要將1:1映射到模型。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.