2010-09-02 6 views
0

HI!django forms ModèleChoiceField

Je veux être en mesure de choisir quelque chose comme ceci:
Supposons que le numéro et le nom de l'étudiant, à la fois dans la même ligne et les deux apparaîtront.
1 John
2 Marie
3 Jane
(..)
donc ce que je l'ai fait dans les formes est:

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

La vue:

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}) 

Et la modèle:

<form action="" method="post"> 
    {% for field in form_std %} 
     {{ field }} 
    {% endfor %} 

<input type="submit" value="Submit" /> 
</form> 

Je reçois cette erreur:
TypeError: TypeError: initialisation() a obtenu un inattendu «choix de la discussion de mot-clé

Si quelqu'un pouvait me aider j'apprécierais :)
de Merci

Répondre

1

Résolu !

Si quelqu'un est intéressé va ici les changements:

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