0%

Ruby on Rails 網站開發 練習 - ActiveJob 背景工作

ActiveJob 背景工作

可以進到終端機輸入rails g看看有什麼指令可以使用。發現有一個job。可以透過它產生一個背景工作來做些事情。
那我們就來產生一個背景工作,並給它命名VoteMail

打開VScode,來確認看看是否jobs的地方有新增一個背景工作。

再回到candidate_controller.rb投票的function裡面,把原本那行寄信工作的code搬家,搬到個剛建立的背景工作vote_mail_job.rb裡面。

回到 candidate_controller.rb
增加一行VoteMailJob.perform_later

這時候重新啟動rails server。發現現在點擊 vote 之後,馬上就顯示 Voted!!!
這個做法就是讓那個較花時間的工作先存放到背景去,等有空的時候再來執行它。

參考來源:為你自己學 Ruby on Rails (https://railsbook.tw/)