1

我上传工作正常,但问题是,我想过滤掉所有不需要的文件类型。我知道使用 html,您可以使用以下内容:

<input type="file" name="file" accept="image/*" id="file"> <input type="submit" name="submit" value="Upload Image!">

在这种情况下,这告诉浏览器只在文件对话框中显示图像文件。

我不知道如何将 accept="image/*" 添加到 Django 的小部件中。

任何帮助都是最受欢迎的!

4

1 回答 1

2

您可以使用attrs此处记录的小部件进行更改:https ://docs.djangoproject.com/en/1.3/ref/forms/widgets/#django.forms.Widget.attrs

from django import forms

class MyForm(forms.Form):    
    my_file = forms.FileField()

    def __init__(self, *args, **kwargs):
        super(MyForm, self).__init__(*args, **kwargs)
        self.fields['my_file'].widget.attrs.update({'accept': 'image/*'})

或者,您可以使用django-widget-tweaks 之类的东西通过模板标签来执行此操作。

于 2012-05-22T19:21:21.170 回答