django - 尝试使用reportlab生成pdf时出现404
问题描述
我正在尝试实现生成 pdf 文件以从views.py
. 现在我正在使用django 文档中提供的示例代码,但是由于某种原因,当我尝试生成示例 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'),
]
推荐阅读
- c# - 这个脚本资源密集吗?如果是这样,如何改进?
- pointers - 初始化指针数组 - 不能使类型 *[]type
- python - 如何使用 Brightway2 将 Ecoinvent 3.5 数据库导出到 GEXF 文件?
- vulkan - Vulkan WaW 危害和内存屏障
- c - 数组索引和计数器溢出
- mongodb - 主节点更改后如何使用Nodeport连接MongoDB主节点
- reactjs - React:如何通过单击父 div 来选择子组件中所有列/行的复选框
- arduino - Arduino作为开门者
- javascript - 如何在面向对象的 Javascript 中进行方法链接?
- html - 导航栏中的字幕 + 右对齐项目