2012-02-13 21 views
5

Ben yeni yorumun yayınlandığı edildiğinde beni bildirmek için ActionMailer kullanmaya çalışıyorum ama hata almaya devam:Raylar 3 Eylem Mailer başlatılmamış sabit

uninitialized constant CommentsController::CommentMailer 

comment benim veritabanına eklenir ve olabilir inceledi. Ben de kullanıyorum ve e-posta işlevleri iyi çalışıyor.

Yorumum mailler:

class CommentMailer < ActionMailer::Base 
    def newcomment(comment) 
    mail(:to => "[email protected]", :subject => "New Comment") 
    end 
end 

ve benim denetleyicisi bölümü: benim kötü

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 
+3

Hata mesajınız "CommentsMailer" ifadesinin bir s harfi ile belirtilirken, kodunuzda CommentMailer yazıyor. Hata kesinlikle bu koddan geliyor mu? Hatanın stacktrace'den geldiği çizgiyi belirleyebilir misiniz? – Shadwell

+0

Üzgünüm, sorumu sorduğumda geç kalmıştı. "CommentMailer" değil "CommentsMailer" değil "s" – Steve

cevap

3

Tamam, ben mailler ekledikten sonra raylar uygulamayı yeniden başlatın zorunda kaldı. Şu an çalışıyor

13

Bu, mailler dosyanızı yanlış adlandıran da olabilir. UserMailer.rb kırılacak, user_mailer.rb ise beklenen şey.

İlgili konular