Django 选择选项

8 投票
1 回答
10411 浏览
提问于 2025-04-16 02:40

我正在制作一个应用程序,它有一个文件名输入框、一个上传文件的区域和一个选择框。假设我的选择框是这样的:

<select name="menu">
   <option value="0" selected> select imp </option>
   <option value="1"> imp 1 </option>
   <option value="2"> imp 2 </option>
   <option value="3"> imp 3 </option>
   <option value="4"> imp 4 </option>
</select>
<input type="submit" value="Upload" />

我已经用这个类实现了文件上传:

class UploadFileForm(forms.Form):
    title = forms.CharField(max_length=50)
    file  = forms.FileField(widget=forms.FileInput())

那么这个类加上选择框后应该是什么样子的呢?或者我该如何使用文件上传的表单,并获取选择框的值,然后根据这个值执行某个操作呢?

1 个回答

12

你需要使用一个叫做 ChoiceField 的东西:

IMP_CHOICES = (
    ('1', 'imp 1'),
    ('2', 'imp 2'),
    ('3', 'imp 3'),
    ('4', 'imp 4'),
)

class UploadFileForm(forms.Form):
    title = forms.CharField(max_length=50)
    file  = forms.FileField(widget=forms.FileInput())
    imp = forms.ChoiceField(choices=IMP_CHOICES)

撰写回答