gpt4 book ai didi

django - 如何在 Django View 中检索静态文件的内容?

转载 作者:行者123 更新时间:2023-12-02 04:43:30 26 4
gpt4 key购买 nike

我有 html 文件,我想从 django View 中将文件的内容提供给用户。

基本上这些文件是内部结构为html的数据文件。

** 编辑 **

所以你想呈现它们(在浏览器中显示它们),或发送它们以供下载?它们是模板还是用户上传的文件?

A:客户将使用 html(以及其他数据)并用它替换页面的某些部分。 (不过我认为我将如何使用它并不那么重要。我们可以将 html 内容视为数据)

您会在编写软件时知道相关文件的名称,还是只在运行时才知道它们的名称?

答:我目前有一个表,其中包含文件路径作为一个字段。 IE。文件路径可以在运行时更改

最佳答案

您需要利用静态文件存储系统。

from django.contrib.staticfiles.storage import staticfiles_storage

file_handle = staticfiles_storage.open(your_filename)
contents = file_handle.read()

文件名(上面的your_filename)应该是静态文件的相对路径(不包括STATIC_URL (/static/[this part])

编辑:Finder 与存储

如果你想找到存储在应用程序目录(或其他配置的静态查找器)中的静态文件,你需要使用查找器,而不是存储来检索文件内容。以下是如何做到这一点:

from django.contrib.staticfiles.finders import find
file_path = "relative/path/to/file.extension"
abs_path = find(file_path)
file(abs_path).read()

关于django - 如何在 Django View 中检索静态文件的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20322952/

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