1

我已将 django 文件浏览器的调试设置为 True,并在模型中编写了扩展限制。

pdf = FileBrowseField("PDF", max_length=200, directory="documents/", extensions=['.pdf', '.doc', '.txt'], format='Document', blank=True, null=真的)

在 django admin 中,它正确显示调试信息。目录文件/扩展名 ['.pdf', '.doc', '.txt'] 格式文件

但是当我调用文件浏览器时,它允许上传所有文件扩展名。

如何限制文件浏览器仅上传我想要的某些文件类型?

感谢大家

4

1 回答 1

1

在 filebrowser/fb_seettings 中将它们定义为一个名为 EXTENSIONS 的字典。

EXTENSIONS = {
    'Folder':[''],
    'Image':['.jpg', '.jpeg', '.gif','.png','.tif','.tiff'],
    'Zip':['.zip', '.rar'],
    'Video':['.mov','.wmv','.mpeg','.mpg','.avi','.rm'],
    'Document':['.pdf','.doc','.rtf','.txt','.xls','.csv'],
    'Sound':['.mp3','.mp4','.wav','.aiff','.midi'],
    'Code':['.html','.py','.js','.css']
}

编辑:如果你想在你的 FileBrowserField 中:

pdf = FileBrowseField("PDF", max_length=200, initial_directory="documents/", extensions_allowed={'Documents':['.pdf', '.doc', '.txt']}, format="Documents", blank=True, null=True)
于 2010-04-17T21:43:22.137 回答