0

这是我的网址

url(r'download/$', views.DownloadView.serve_pdf, name="pdfdata-ddl" )

这是我的看法

class DownloadView():

    def serve_pdf(request):
        #pdf_data = magically_create_pdf()

        response = HttpResponse(mimetype='application/pdf')
        response['Content-Disposition'] = 'attachment; filename="/test/angular.pdf"'
        return response

错误是这个

unbound method serve_pdf() must be called with DownloadView instance as first argument (got WSGIRequest instance instead)
4

1 回答 1

2

您需要self作为第一个参数传入您的方法:

class DownloadView(object):
    def serve_pdf(self, request):
        #pdf_data = magically_create_pdf()

        response = HttpResponse(mimetype='application/pdf')
        response['Content-Disposition'] = 'attachment; filename="/test/angular.pdf"'
        return response

[编辑]对不起,我忘了提到你还需要在 URL 定义中实例化类:

url(r'download/$', views.DownloadView().serve_pdf, name="pdfdata-ddl" )

要使用 Python 创建 PDF,请查看Pisa

于 2012-11-30T03:38:49.650 回答