我按照安装 weasyprint (Django 项目)的说明安装了包weasyprint。\n我的系统:win 10。我已经安装了gtk3,它存在于我的PATH中\n
import weasyprint\n...\n@staff_member_required\ndef order_admin_pdf(request, order_id):\n # \xd0\x9f\xd0\xbe\xd0\xbb\xd1\x83\xd1\x87\xd0\xb0\xd0\xb5\xd0\xbc \xd0\xb7\xd0\xb0\xd0\xba\xd0\xb0\xd0\xb7 \xd0\xbf\xd0\xbe ID:\n order = get_object_or_404(Order, id=order_id)\n # \xd0\x9f\xd0\xb5\xd1\x80\xd0\xb5\xd0\xb4\xd0\xb0\xd0\xb5\xd0\xbc \xd0\xbe\xd0\xb1\xd1\x8a\xd0\xb5\xd0\xba\xd1\x82 \xd0\xb2 \xd1\x84\xd1\x83\xd0\xbd\xd0\xba\xd1\x86\xd0\xb8\xd1\x8e render_to \xd1\x87\xd0\xb5\xd1\x80\xd0\xb5\xd0\xb7 \xd0\xb3\xd0\xb5\xd0\xbd\xd0\xb5\xd1\x80\xd0\xb0\xd1\x86\xd0\xb8\xd1\x8e \xd1\x88\xd0\xb0\xd0\xb1\xd0\xbb\xd0\xbe\xd0\xbd\xd0\xb0 pdf.html HTML \xd0\xb2 \xd0\xb2\xd0\xb8\xd0\xb4\xd0\xb5 \xd1\x81\xd1\x82\xd1\x80\xd0\xbe\xd0\xba\xd0\xb8:\n html = render_to_string(\'shop/orders/order_admin_pdf.html\',\n {\'order\': order})\n # \xd0\xa1\xd0\xbe\xd0\xb7\xd0\xb4\xd0\xb0\xd0\xb5\xd0\xbc \xd0\xbe\xd0\xb1\xd1\x8a\xd0\xb5\xd0\xba\xd1\x82 \xd0\xbe\xd0\xb2\xd1\x82\xd0\xb5\xd1\x82\xd0\xb0 \xd1\x81 \xd1\x82\xd0\xb8\xd0\xbf\xd0\xbe\xd0\xbc \xd1\x81\xd0\xbe\xd0\xb4\xd0\xb5\xd1\x80\xd0\xb6\xd0\xb8\xd0\xbc\xd0\xbe\xd0\xb3\xd0\xbe application/pdf \xd0\xb8 \xd0\xb7\xd0\xb0\xd0\xb3\xd0\xbe\xd0\xbb\xd0\xbe\xd0\xb2\xd0\xba\xd0\xbe\xd0\xbc Content-Disposition:\n response = HttpResponse(content_type=\'application/pdf\')\n response[\'Content-Disposition\'] = \'filename=order_{}.pdf"\'.format(order.id)\n # \xd0\x92\xd1\x8b\xd0\xb7\xd0\xbe\xd0\xb2 \xd0\xbc\xd0\xb5\xd1\x82\xd0\xbe\xd0\xb4\xd0\xb0 weasyprint \xd0\xb4\xd0\xbb\xd1\x8f \xd0\xbf\xd0\xbe\xd0\xbb\xd1\x83\xd1\x87\xd0\xb5\xd0\xbd\xd0\xb8\xd1\x8f PDF \xd0\xb4\xd0\xbe\xd0\xba\xd1\x83\xd0\xbc\xd0\xb5\xd0\xbd\xd1\x82\xd0\xb0:\n weasyprint.HTML(string=html).write_pdf(response,\n stylesheets=[weasyprint.CSS(\n settings.STATIC_ROOT + \'css/pdf.css\')])\n return response\n
Run Code Online (Sandbox Code Playgroud)\n\nOSError:无法加载库“gobject-2.0”:错误0x7e。此外,ctypes.util.find_library() …