Я пытаюсь использовать ActionMailer уведомить меня, когда новый комментарий отправлен, но я получаю сообщение об ошибке:Rails 3 Action Mailer неинициализированным постоянная
uninitialized constant CommentsController::CommentMailer
Комментарий добавлен к моей базе данных и может быть рассматривается. Я также использую программу, и функции электронной почты работают нормально.
Мой комментарий почтовик:
class CommentMailer < ActionMailer::Base
def newcomment(comment)
mail(:to => "[email protected]", :subject => "New Comment")
end
end
и мой раздел Контроллер:
def create
@comment = Comment.new(params[:comment])
@comment.user_id = current_user.id
respond_to do |format|
if @comment.save
CommentMailer.newcomment(@comment).deliver
format.html { redirect_to @comment, notice: 'Comment was successfully created!' }
format.json { render json: @comment, status: :created, location: @comment }
else
format.html { render action: "new" }
format.json { render json: @comment.errors, status: :unprocessable_entity }
end
end
end
Ваше сообщение об ошибке говорит «Комментарии» с помощью s, тогда как ваш код говорит CommentMailer. Является ли ошибка, безусловно, исходящей из этого кода? Можете ли вы определить линию, откуда исходит ошибка из stacktrace? – Shadwell
Жаль, что уже было поздно, когда я задал свой вопрос. это «CommentMailer» Not «CommentsMailer» no "s" – Steve