こんにちは、このガイドに従って連絡フォームを実装しようとしています: Rails 3の連絡フォーム
Google アプリは使用していませんが、1and1 の smtp を使用しています。
フォームを送信しようとすると発生するエラーは
Processing by ContactController#create as HTML
Parameters: {"utf8"=>"✓",
"authenticity_token"=>"N48ORAhmDqTO7X2wsRlslMJ3l+v=", "message"=>{"name"=>"Patrick", "email"=>"patrick@yahoo.com", "subject"=>"Hello", "body"=>"Hello ME"}, "commit"=>"Send"}
NameError (uninitialized constant ContactController::NotificationsMailer):
app/controllers/contact_controller.rb:11:in `create'
微調整を何度か試みた後、ガイドからコードをコピーして貼り付けるだけになりました。まだ問題があります。
class ContactController < ApplicationController
def new
@message = Message.new
end
def create
@message = Message.new(params[:message])
if @message.valid?
NotificationsMailer.new_message(@message).deliver
redirect_to(root_path, :notice => "Message was successfully sent.")
else
flash.now.alert = "Please fill all fields."
render :new
end
end
end
通知メーラー
class NotificationMailer < ActionMailer::Base
default from: "noreply@misawahousing.com"
default to: "info@misawahousing.com"
def new_message(message)
@message = message
mail(subject: "[misawahousing.com] #{message.subject}")
end
end