如何在Django视图中下载FileField文件

19

我在Django模型中有一个文件字段:

file=models.FileField(verbose_name=u'附件',upload_to='attachment/%Y/%m/%d',max_length=480)

这个文件将会在网页上以链接"http://test.com.cn/home/projects/89/attachment/2012/02/24/sscsx.txt"的形式展示。

我想要实现的是当用户点击这个文件链接时,可以自动下载这个文件;

有没有人能告诉我如何在视图中实现这个功能呢?

提前感谢!

2个回答

33

1
你是如何将 object_name 添加到那个视图的?你使用了哪些 URL 参数? - yretuta
对象名称并不重要,因为它只是代表一个Django模型对象。您可以以任何方式检索对象。 - Victor Neo
6
你也可以使用os.path.basename来过滤文件名,而不是使用.split('/')。例如:filename = os.path.basename(object_name.file.name)。这样做无论在哪个操作系统上都可以正常工作。 - Andrew Calder
如果文件名是UTF-8字符串,会怎样? - zx1986

6

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接