尝试使用 reportlab 生成 pdf 时出现 404
404 while trying to generate pdf with reportlab
我正在尝试实现生成 pdf 文件以供从 views.py
下载的选项。现在我正在使用 django docs 中提供的示例代码,但是由于某种原因,当我尝试生成示例 pdf 时,我收到 404 错误消息:
The current path, stv/DRG_result, didn't match any of these.
--bunch of urls paths--
The current path, stv/DRG_result, didn't match any of these.
这似乎合乎逻辑,因为我没有在 urls.py
中为此设置任何路径(因为没有信息表明需要它)。
我应该设置它吗?有人可以告诉我如何正确地做到这一点,因为我对 django 很陌生。还是其他地方有错误?
我的相关 views.py
部分:
import io
from django.http import FileResponse
from reportlab.pdfgen import canvas
def DRG_result(request):
buffer = io.BytesIO()
p = canvas.Canvas(buffer)
p.drawString(100, 100, "hello world.")
p.showPage()
p.save()
buffer.seek(0)
return FileResponse(buffer, as_attachment=True, filename='hello.pdf')
调用此函数的模板中按钮的代码部分:
<form action='DRG_result' method='GET'>
{% csrf_token %}
<button type="submit" >Generuoti PDF</button>
</form>
我找到了如何修改 urls.py
文件。结果我需要添加这个:
from django.conf.urls import url
urlpatterns = [
url(r'^DRG_result/$', views.DRG_result, name='DRG_result'),
]
我正在尝试实现生成 pdf 文件以供从 views.py
下载的选项。现在我正在使用 django docs 中提供的示例代码,但是由于某种原因,当我尝试生成示例 pdf 时,我收到 404 错误消息:
The current path, stv/DRG_result, didn't match any of these.
--bunch of urls paths--
The current path, stv/DRG_result, didn't match any of these.
这似乎合乎逻辑,因为我没有在 urls.py
中为此设置任何路径(因为没有信息表明需要它)。
我应该设置它吗?有人可以告诉我如何正确地做到这一点,因为我对 django 很陌生。还是其他地方有错误?
我的相关 views.py
部分:
import io
from django.http import FileResponse
from reportlab.pdfgen import canvas
def DRG_result(request):
buffer = io.BytesIO()
p = canvas.Canvas(buffer)
p.drawString(100, 100, "hello world.")
p.showPage()
p.save()
buffer.seek(0)
return FileResponse(buffer, as_attachment=True, filename='hello.pdf')
调用此函数的模板中按钮的代码部分:
<form action='DRG_result' method='GET'>
{% csrf_token %}
<button type="submit" >Generuoti PDF</button>
</form>
我找到了如何修改 urls.py
文件。结果我需要添加这个:
from django.conf.urls import url
urlpatterns = [
url(r'^DRG_result/$', views.DRG_result, name='DRG_result'),
]