Условная / отложенная рассылка с resque?
У меня есть приложение, которое создает множество документов PDF, которые иногда занимают время, поэтому я переместил все создание PDF в фоновое задание. Тем не менее, некоторые PDF-файлы также должны быть отправлены по почте, что в настоящее время является проблемой, потому что я не знаю, как сказать почтовику ждать, пока PDF-файлы будут созданы.
Прежде чем у меня было это:
@contract.create_invoice
ContractMailer.send_invoice(@contract).deliver
Теперь у меня есть это:
Resque.enqueue(InvoiceCreator, @contract)
ContractMailer.send_invoice(@contract).deliver
Таким образом, ContractMailer всегда терпит неудачу, потому что PDF еще не создан. У кого-нибудь есть идеи, как решить это элегантно?
Спасибо!