2012-09-27 3 views
1

으로 전달 실패 내 보고서 컨트롤러에서이 방법을 date) .deliver ReportMailer.status_email (current_user, reports, date) .send_later (: send_status)는 delayed_job

하지만 배달에 대한 400 개의 잘못된 요청이 있습니다. 도움이 필요하십니까? 감사!

+0

그것은 경우에 도움이 될 다음 CURRENT_USER 및 보고서를 당겨

ReportMailer.delay.status_email(current_user.id, reports_ids, date) 

그리고 status_email 내부 (당신의 delayed_job 프로세스가 자동으로 실패 할 수 있음) 정확한 오류 스택 추적은 알려져 있습니다. catch-all 구조 문 대신에 특정 오류 클래스를 사용하여 디버깅 중 모호성을 방지하십시오. 구조 블록을 제거하면 얻게되는 오류는 무엇입니까? – Kashyap

+0

는 24ms 형식 오류 500 내부 서버 오류 완료 (익명 모듈 덤프 할 수 없습니다 #을 <모듈 : 0xc9c9cc4>) : 응용 프로그램/컨트롤러/reports_controller.rb : 97 : 나는 또한 ReportMailer.delay을 시도 –

+0

'send_status'에. status_email (current_user, reports, date) –

답변

2

피 delayed_job 대신 ID를 사용하여 객체를 전달 :

def status_email(userid, reports_ids, date) 
    current_user = User.find_by_id(userid) 
    reports = Report.find_all_by_id(reports_ids) 
    ... 
end