前提・実現したいこと
ruby on rails でユーザーがグループ作成時にグループに属するユーザにメールを送りたい
発生している問題・エラーメッセージ
NameError in MailsController#create uninitialized constant Mail::TestMailer class NoticeEventMailer < ActionMailer::Base default :from => 'any_from_address@example.com' def notice_event_email(mail) @mail = mail mail( :to => @mail.users.email,
該当のソースコード
notice_event_email.erb class NoticeEventMailer < ActionMailer::Base default :from => 'any_from_address@example.com' def notice_event_email(mail) @mail = mail mail( :to => @mail.users.email, :subject => 'Notice an Event' ) end end
notice_event_mailer.rb <!DOCTYPE html> <html> <head> <meta content='text/html; charset=UTF-8' http-equiv='Content-Type' /> </head> <body> <!--メール本文--> <h1>タイトル</h1> <p><%= @mail.title %></p> <h1>本文</h1> <p><%= @mail.content %></p> </body> </html>
mails_controller.erb def create @mail = Mail.new(mail_params) @mail.user_id = current_user.id if @mail.save NoticeEventMailer.notice_event_email(@mail).deliver redirect_to mail_path(@mail) else @mail = Mail.new render :new end end
environment.erb ActionMailer::Base.smtp_settings = { :user_name => 'your_sendgrid_username', :password => 'your_sendgrid_password', :domain => 'yourdomain.com', :address => 'smtp.sendgrid.net', :port => 587, :authentication => :plain, :enable_starttls_auto => true }
試したこと
この記事参考にしました
https://sendgrid.kke.co.jp/docs/Integrate/Frameworks/rubyonrails.html
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。