diff --git a/app/controllers/admins/feedbacks_controller.rb b/app/controllers/admins/feedbacks_controller.rb index caff0a9f8..4ef3c455c 100644 --- a/app/controllers/admins/feedbacks_controller.rb +++ b/app/controllers/admins/feedbacks_controller.rb @@ -25,12 +25,12 @@ class Admins::FeedbacksController < Admins::BaseController def create_history @feedback_message_history = @feedback.feedback_message_histories.new(feedback_message_history_params) @feedback_message_history.user = current_user - if @feedback_message_history.save + if @feedback_message_history.save! redirect_to admins_feedbacks_path flash[:success] = "发送通知成功" else redirect_to admins_feedbacks_path - flash[:danger] = "发送通知失败" + flash[:danger] = @feedback_message_history.errors.full_messages.join(", ") end end diff --git a/app/mailers/user_mailer.rb b/app/mailers/user_mailer.rb index 21ed5b0d5..2e6ca2eb7 100644 --- a/app/mailers/user_mailer.rb +++ b/app/mailers/user_mailer.rb @@ -1,6 +1,6 @@ class UserMailer < ApplicationMailer # 注意:这个地方一定要和你的邮箱服务域名一致 - default from: 'notification@trustie.org' + default from: 'admin@trustie.org' # 用户注册验证码 def register_email(mail, code) @@ -12,4 +12,8 @@ class UserMailer < ApplicationMailer @code = code mail(to: mail, subject: 'Gitink | 更改邮箱验证码') end + + def feedback_email(mail, title, content) + mail(to: mail, subject: title, content_type: "text/html", body: content) + end end diff --git a/app/models/feedback_message_history.rb b/app/models/feedback_message_history.rb index d04a005f1..ee746cafd 100644 --- a/app/models/feedback_message_history.rb +++ b/app/models/feedback_message_history.rb @@ -20,5 +20,15 @@ class FeedbackMessageHistory < ApplicationRecord belongs_to :feedback belongs_to :user - + + before_validation :send_meessage_email, on: :create + + private + + def send_meessage_email + unless UserMailer.update_email(mail, verification_code).deliver_now + errors[:title] << '邮件发送失败!' + end + end + end