将参数传递到电子邮件中

时间:2015-06-19 13:15:36

标签: ruby-on-rails email

我有用户和管理员,当用户发布帖子时,所有管理员都会收到要通知的邮件。我想传递帖子标题或发布帖子的用户名等参数。目前,我只能传递接收器的名称,这不是我想要的。这是我到目前为止所做的事情

模型方法

after_create :send_email_to_admins
def send_email_to_admins
  group_admin = UserManager::Group.where("name = ?", "Administrateur").first
  User.all.each do |user|
    if UserManager::Tree.get_default.is_in_group(user,group_admin)
      AdminMailer.notification_mail(user).deliver_now  
    end
  end
end

邮件程序方法

def notification_mail(user)
  @user = user
  mail(to: @user.email, subject: 'Publication boite à idées')
end

如何获取帖子的参数并将其传递到电子邮件中?

1 个答案:

答案 0 :(得分:0)

我会这样做(稍微伪代码为y,因为你没有解释你的模式)

#in Post model
after_create :deliver_email_notifications

def deliver_email_notifications
  Admin.all.each do |admin|
    Mailer.deliver_post_notification(self,admin)
  end
end

#in Mailer

def post_notification(post, admin)
  #send an email to admin.email, using a template which has some information about the post
end