代码之家  ›  专栏  ›  技术社区  ›  psoares

django forms ModelChoiceField公司

  •  0
  • psoares  · 技术社区  · 14 年前

    我希望能够从以下内容中进行选择:
    假设数字和学生姓名都在同一行,并且都会出现。
    1约翰
    2玛丽

    (..)
    所以我在表格里做的是:

    class StudentForm(forms.Form):
        std = tuple of number and name
        nbr = forms.ModelChoiceField(student, choices=std, widget=Select(), required=True) 
    

    if request.method == 'POST':
        form_std = StudentForm(request.POST)
        if form_std.is_valid():
            std = form_std.cleaned_data['nbr']
            std_nr = std.number
            if std_nr:
                idt = std_nr
            return render_to_response('temp.html', {'form_std': form_std, 'idt': idt})
    

    以及模板:

    <form action="" method="post">
        {% for field in form_std %}
            {{ field }}
        {% endfor %}
    
    <input type="submit" value="Submit" />
    </form> 
    

    我得到这个错误:
    初始化 ()获得意外的关键字参数“choices”

    如果有人能帮我,我将不胜感激:)
    谢谢

    1 回复  |  直到 14 年前
        1
  •  1
  •   psoares    14 年前

    解决了的!

    如果有人感兴趣,这里有一些变化:

    nbr = forms.ModelChoiceField(std, widget=Select(), required=True) 
    nbr.choices = tuple number name