2013-06-19 27 views
0

你好,我想实现这个指南联络表格:Contact form in Rails 3联系表未初始化的常量的ContactController

我没有使用谷歌应用程序,但的1and1的SMTP。

我得到当我尝试发送表单的错误是

Processing by ContactController#create as HTML 
Parameters: {"utf8"=>"✓",  
"authenticity_token"=>"N48ORAhmDqTO7X2wsRlslMJ3l+v=", "message"=>{"name"=>"Patrick", "email"=>"[email protected]", "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 

NotificationMailer

class NotificationMailer < ActionMailer::Base 

default from: "[email protected]" 
default to: "[email protected]" 

def new_message(message) 
    @message = message 
    mail(subject: "[misawahousing.com] #{message.subject}") 
    end 

end 
+0

您是否重新启动服务器? –

+0

请问您可以粘贴控制器操作代码吗? –

+0

@ Michael Szyndel编辑原始问题 – Patrick

回答

2

你有notification_mailer.rb - class NotificationMailer < ActionMailer::Base

改变这种(删除S)

NotificationsMailer.new_message(@message).deliver 

NotificationMailer.new_message(@message).deliver 
+0

谢谢你没有看到错字,但现在我遇到了这个问题的错误。 http://stackoverflow.com/questions/14051056/rails-3-2-8-actionmailer-stack-level-too-deep-plus-uninitialized-constant-mail – Patrick

+1

如果你发现了一个新问题,你可以提出一个新问题并接受答案或您在这些问题上发布解决方案 –

相关问题