Django 相同的形式,不同的变量。如何实施?

Django 相同的形式,不同的变量。如何实施?,django,django-forms,Django,Django Forms,我有一个表格,其中一个字段是类别:体育、电影、书籍等 我还有另一张表,上面有子类别,比如体育分为芭蕾舞、足球、高尔夫等等 假设我有一个包含两个变量的列表:[“运动”、“电影”] (这些变量来自一个文件。我正在上传一个文件,每当类别有多个子选项时,我想在类别内显示一个带有选项的选择。) 例如,用户插入了运动和电影。我想为列表中的每个字段显示一个选择选项。但是子选项不同,它取决于所选的类别 输出: 运动: o Futebol o芭蕾舞 高尔夫 电影: o戏剧 喜剧 forms.py class Op

我有一个表格,其中一个字段是类别:体育、电影、书籍等
我还有另一张表,上面有子类别,比如体育分为芭蕾舞、足球、高尔夫等等

假设我有一个包含两个变量的列表:[“运动”、“电影”]
(这些变量来自一个文件。我正在上传一个文件,每当类别有多个子选项时,我想在类别内显示一个带有选项的选择。)

例如,用户插入了运动和电影。我想为列表中的每个字段显示一个选择选项。但是子选项不同,它取决于所选的类别

输出:

运动:
o Futebol
o芭蕾舞
高尔夫

电影:
o戏剧
喜剧

forms.py

class OptionsForm(forms.Form):
def __init__(self, numb, *args, **kwargs):
    super(OptionsForm, self).__init__(*args, **kwargs)
    self.fields['num'] = forms.ChoiceField(widget=RadioSelect(), choices=
        numb, label="", required=True)
我正在传递一个包含所有子选项的元组:

numb = (('ballet', 'ballet'),
       ('futebol', 'futebol'),
       ('golf', 'golf'),  
       ('drama', 'drama'),
       ('comedy', 'comedy'))
但我不确定如何区分它们,也许对于表单集这会起作用,但不确定如何区分

任何帮助或建议都将不胜感激

谢谢

事实上,这比我预想的要简单:)

我只需要传递一个元组字典:

dic = { 'Sport': [('ballet', 'ballet'), ('futebol', 'futebol'), ('golf'), ('golf')],
        'Movies': [('drama', 'drama'), ('comedy', 'comedy')] }
及更改表格:

class CategoriesForm(forms.Form):
    def __init__(self, numb, *args, **kwargs):
        super(CtaegoriesForm, self).__init__(*args, **kwargs)
        for p, i in numb.items():
            self.fields[p] = forms.ChoiceField(widget=RadioSelect(), choices=i,
                required=True)

你需要两个选择:一个有[体育,电影]选择,第二个根据第一个的值更改其选择,对吗?正确,我需要两个选择,但不同。如果你有更多的疑问,让我更新我的问题,问更多的细节。希望它更容易解释,基本上我想要两个选择(可能更多或更少),一个用于体育,另一个用于电影