2012-10-20 3 views
2

레일스에서 ​​Action Mailer을 사용하여 이메일을 보내려고합니다.ActionMailer debugging

def create 
    ... 
    if @post.save 
    UserMailer.archive_confirmation(@site).deliver 
    end 
end 

그러나 나는 그것을 시도 할 때, 나는 이메일을하지 않고, 내가 디버깅하는 방법을 모르고이 없다합니다 (create 방법이 성공적으로 실행하기 때문에, 다른 모든 것들이 예상가는대로를, 오류 메시지가 없습니다) 어디 ActionMailer가 잘못 될 수 있습니까?

+0

RAILS 로그 란 무엇입니까? –

+0

RAILS 기록은 어디에서 찾을 수 있습니까? – John

+0

아, 이유를 알아 냈어. 보호 된 변수에 할당하려고했습니다. 감사! – John

답변

2

RAILS 로그 (APP_ROOT/log/development.log 또는 APP_ROOT/log/production.log)를 확인하십시오.

0

컨트롤러에 전자 메일을 보내려면 코드를 작성하면 응용 프로그램에서 구조를 처리하기 위해 다음과 같이 작성할 수 있으며 표시 할 수있는 구조의 오류 메시지를 표시 할 수 있습니다. 컨트롤러에서 다음과 같이 사용하고 있습니다.

if @user.save 
    begin 
    UserMailer.welcome_email(@user).deliver 
    flash[:success] = "#{@user.name} created" 
    rescue Net::SMTPAuthenticationError, Net::SMTPServerBusy, Net::SMTPSyntaxError, Net::SMTPFatalError, Net::SMTPUnknownError => e 
    flash[:notice]=e.message 
    end 
    redirect_to home_index_path 
end