Я использую delayed_job, чтобы отложить отправку информации из моего приложения в FreeagentCentral (пакет бухгалтерских услуг). В то же время он также отправляет два электронных письма, используя гем PostmarkApp.
# POST /kases
# POST /kases.xml
def create
@company = Company.find(params[:kase][:company_id])
@kase = @company.kases.create!(params[:kase])
respond_to do |format|
UserMailer.delay.deliver_makeakase("email@address.com", "Highrise", @kase) if params[:sendtohighrise]
UserMailer.delay.deliver_makeakaseteam("email2@address.com", "Highrise", @kase) if params[:notify_team_of_creation]
@kase.delay.create_freeagent_project(current_user) if params[:send_to_freeagent]
#flash[:notice] = 'Case was successfully created.'
flash[:notice] = fading_flash_message("Case was successfully created.", 5)
format.html { redirect_to(@kase) }
format.xml { render :xml => @kase, :status => :created, :location => @kase }
end
end
Приведенный выше код не выдает никаких ошибок - но электронные письма не отправляются. Мне было интересно, сделал ли я что-то не так?
Должно ли это быть так, или я что-то упустил:
UserMailer.delay.deliver_makeakaseteam("email2@address.com", "Highrise", @kase) if params[:notify_team_of_creation]
Спасибо
Danny
UPDATE
---
- !ruby/object:Delayed::Backend::ActiveRecord::Job
attributes:
created_at: 2011-02-21 13:30:38
locked_by:
failed_at:
updated_at: 2011-02-21 13:30:38
handler: |
--- !ruby/struct:Delayed::PerformableMethod
object: LOAD;UserMailer
method: :deliver_makeakase
args:
- email@email.com
- Highrise
- LOAD;Kase;19
priority: "0"
id: "1"
run_at: 2011-02-21 13:30:38
locked_at:
attempts: "0"
last_error:
attributes_cache: {}
- !ruby/object:Delayed::Backend::ActiveRecord::Job
attributes:
created_at: 2011-02-21 13:30:38
locked_by:
failed_at:
updated_at: 2011-02-21 13:30:38
handler: |
--- !ruby/struct:Delayed::PerformableMethod
object: LOAD;UserMailer
method: :deliver_makeakaseteam
args:
- email@email.com
- Highrise
- LOAD;Kase;19
priority: "0"
id: "2"
run_at: 2011-02-21 13:30:38
locked_at:
attempts: "0"
last_error:
attributes_cache: {}
=> nil