我的网络应用由python 2.7和Django 1.11编写。当客户付费订阅时,它将立即生成发票pdf并通过电子邮件发送给客户。但是当我减少time.sleep时,代码无法正常工作。我想这是赛车状况。
pdf文件是使用wkhtmltopdf(0.9.9)和pdfkit生成的。睡觉需要什么时间?还是合适的方法?
我将在生成pdf后将其发送给客户。需要再次入睡以等待pdf生成吗?
output_html = current_month_folder + invoice_name + '.html'
output_filename = current_month_folder + invoice_name + '.pdf'
email_filename = invoice_name + '.pdf'
html_content = render_to_string(input_filename, context)
with open(output_html, 'w') as f:
f.write(html_content)
f.flush()
time.sleep(5)
pdfkit.from_file(output_html, output_filename)
答案 0 :(得分:0)
您无需保存该文件并将其设置为pdf。请改用from_string
html_content = render_to_string(input_filename, context)
pdfkit.from_string(html_content, output_filename)
您不需要设置睡眠!您可以在下面放置电子邮件代码。