2010-12-19 2 views
0

Prototype과 함께 RJS를 사용하고 있으며 RoR 메일러 시스템이 전자 메일을 보내는 동안 HTML 코드를 대체하려고합니다. 몇 마디로 브라우저로드가 진행되는 동안 버튼 근처에 .gif 이미지를 표시하려고합니다. 내 응용 프로그램/뷰/사용자/reset.js.rjs에서RoR 메일러 시스템이 전자 메일을 보내는 동안 HTML 코드를 바꾸려고 시도합니다.

파일이 코드가 : 내 애플 리케이션/컨트롤러/* users_controller.rb에서

page.replace(:action_button, system_image_loading_tag) 
page.redirect_to(:root) 

을 * 나는이 코드를 가지고 :

def reset 
    respond_to do |format| 
     UsersMailer.confirm_reset(user).deliver 
     format.js 
    end 
end 

나는 이메일 을 보냈습니다을 기다려야하고 브라우저가 루트 경로로 리디렉션됩니다 관련 양식 제출. 그래서, 내가이 시간을 놓치지 않으려면, 내가 뭘 할 수 있니? 가장 좋은 방법은 무엇입니까?

답변

0

this user과 비슷한 문제가있는 것 같습니다. 컨트롤러가 작업을 렌더링하기 전에 메일이 배달 될 때까지 기다리지 않으려면 전자 메일 배달을 백그라운드로 이동하십시오. 백그라운드 작업을 실행하기위한 시스템이 이미 있다면! 그렇지 않다면, DelayedJob을 ActionMailer와 함께 사용하기위한 these instructions은 개인적으로 DelayedJob을 사용하지는 않았지만 매우 직설적 인 것처럼 보입니다.