0

我需要在 django 模板中获取上传文件的文件类型。我已经编写了一个用于获取文件名的模板标签,但我也需要文件类型。

我可能能够获取文件的内容类型,但在调试时找不到它。

doc_list.html

{{ d.file|filename }}
{{ d.file|filetype }}

模板标签/helper.py

register = template.Library()

@register.filter
def filename(value):
    return os.path.basename(value.file.name)

@register.filter
def filetype(value):
    return ???
4

2 回答 2

2

使用 mimetypes 模块

import mimetypes    

>>> mimetypes.guess_type('a.py',strict = True)
('text/x-python', None)
于 2012-06-11T13:07:33.577 回答
0
mime = magic.Magic(mime=True)
mime.from_file("testdata/test.pdf")

返回:

'application/pdf'
于 2012-06-11T13:36:32.890 回答