gpt4 book ai didi

html - 如何从 django 模板生成静态 html 文件?

转载 作者:技术小花猫 更新时间:2023-10-29 11:59:04 26 4
gpt4 key购买 nike

我是 Django 的新手,我很确定我已经阅读或听说过一种方法可以做到这一点,但我无法在任何地方找到它。

我不想将呈现的输出从模板发送到浏览器,而是想创建一个 html 文件,然后无需每次都经过呈现过程即可提供该文件。我在一个独立于我们主网站服务器的系统上进行开发,我需要定期向我们的用户提供我的数据快照,而不让他们访问开发系统。

我的直觉告诉我应该能够以某种方式将响应重定向到一个文件,但我没有在文档或此处的其他帖子中看到它。

最佳答案

您可以利用 Django 的模板加载器来呈现您的模板,包括您传递给它的任何上下文,作为字符串,然后将其保存到文件系统。如果您需要将该文件保存在外部系统上,例如 Amazon S3,您可以使用 Boto图书馆。

这是一个如何将 View 呈现到文件的示例,使用可选的查询字符串参数作为触发器...

from django.shortcuts import render
from django.template.loader import render_to_string

def my_view(request):
as_file = request.GET.get('as_file')
context = {'some_key': 'some_value'}

if as_file:
content = render_to_string('your-template.html', context)
with open('path/to/your-template-static.html', 'w') as static_file:
static_file.write(content)

return render('your-template.html', context)

关于html - 如何从 django 模板生成静态 html 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22162027/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com