2011-06-20 11 views
7

के साथ "बहुत अधिक मान अनपैक करने के लिए" मैं WTForms उपयोग कर रहा हूँ और मैं एक SelectField प्रदर्शित करने के लिए कोशिश कर रहा हूँ, लेकिन मैं निम्नलिखित त्रुटि मिलती है:WTForms SelectField

class TestForm(Form): 
    status = SelectField(u'Status', choices=Test.statuses()) 
:

>>> form.status() 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "C:\Python26\Lib\site-packages\wtforms\fields.py", line 136, in __call__ 
    return self.widget(self, **kwargs) 
    File "C:\Python26\Lib\site-packages\wtforms\widgets.py", line 237, in __call__ 
    for val, label, selected in field.iter_choices(): 
    File "C:\Python26\Lib\site-packages\wtforms\fields.py", line 390, in iter_choices 
    for value, label in self.choices: 
ValueError: too many values to unpack 

यहाँ मेरी प्रपत्र है

Test.statuses स्थैतिक विधि तारों की एक सूची देता है। मैं क्या गलत कर रहा हूं?

उत्तर

4

कोई बात नहीं, यह tuples, नहीं तार की जरूरत है:

>>> form.status.choices = [(status, status) for status in Test.statuses()] 
>>> form.status() 
u'<select id="status" name="status"><option value="Status1">Status1</option></select>' 
+0

इसके काम करने के लिए धन्यवाद। –

संबंधित मुद्दे