Note that there are some explanatory texts on larger screens.

plurals
  1. POdjango dynamic form ValueError
    text
    copied!<p>I want to get the select form which can display all the users who have the group name "sale". My definition for my forms is like this:</p> <pre><code>class ArrangeUserForm(forms.Form): def __init__(self, *args, **kwargs): super(ArrangeUserForm, self).__init__(*args, **kwargs) user_choices = [] for user in User.objects.all(): if user.groups.filter(name="sale"): user_choices.append(user.first_name) self.fields['user_field'] = forms.ChoiceField(widget=forms.Select, choices=user_choices) mobile = forms.CharField(widget=forms.TextInput, max_length=11, min_length=11) </code></pre> <p>and my view is like this:</p> <pre><code>class ArrangeUserHandler(View): def get(self, request): form = ArrangeUserForm() return render(request, 'student/student_form.html', {'form': form,}) def post(self, request): pass </code></pre> <p>when I run my code and request for that view, I got the following error:</p> <p>ValueError at /student/arrangeuser/</p> <p>too many values to unpack</p> <p>could anyone told me what's going wrong here?</p> <p>Traceback:</p> <pre><code>request Method: GET Request URL: http://domain/student/arrangeuser/ Django Version: 1.5 Python Version: 2.7.3 Installed Applications: ('django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.admin', 'django.contrib.admindocs', 'accounts', 'student', 'order') Installed Middleware: ('django.middleware.common.CommonMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware') Template error: In template /home/rogerliu/newproject/crm/templates/student/student_form.html, error at line 7 too many values to unpack 1 : 2 : &lt;form method="post"&gt; 3 : {% csrf_token %} 4 : {% for field in form %} 5 : &lt;div class="fieldWrapper"&gt; 6 : {{ field.errors }} 7 : {{ field.label_tag }}: {{ field }} 8 : &lt;/div&gt; 9 : {% endfor %} 10 : &lt;input type="submit" value="submit" /&gt; 11 : 12 : &lt;/form&gt; 13 : 14 : Traceback: File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py" in get_response 115. response = callback(request, *callback_args, **callback_kwargs) File "/usr/local/lib/python2.7/dist-packages/django/views/generic/base.py" in view 68. return self.dispatch(request, *args, **kwargs) File "/usr/local/lib/python2.7/dist-packages/django/views/generic/base.py" in dispatch 86. return handler(request, *args, **kwargs) File "/home/rogerliu/newproject/crm/student/views.py" in get 318. return render(request, 'student/student_form.html', {'form': form,}) File "/usr/local/lib/python2.7/dist-packages/django/shortcuts/__init__.py" in render 53. return HttpResponse(loader.render_to_string(*args, **kwargs), File "/usr/local/lib/python2.7/dist-packages/django/template/loader.py" in render_to_string 177. return t.render(context_instance) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render 140. return self._render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in _render 134. return self.nodelist.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render 830. bit = self.render_node(node, context) File "/usr/local/lib/python2.7/dist-packages/django/template/debug.py" in render_node 74. return node.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/defaulttags.py" in render 188. nodelist.append(node.render(context)) File "/usr/local/lib/python2.7/dist-packages/django/template/debug.py" in render 87. output = force_text(output) File "/usr/local/lib/python2.7/dist-packages/django/utils/encoding.py" in force_text 99. s = s.__unicode__() File "/usr/local/lib/python2.7/dist-packages/django/forms/forms.py" in __str__ 411. return self.as_widget() File "/usr/local/lib/python2.7/dist-packages/django/forms/forms.py" in as_widget 458. return widget.render(name, self.value(), attrs=attrs) File "/usr/local/lib/python2.7/dist-packages/django/forms/widgets.py" in render 555. options = self.render_options(choices, [value]) File "/usr/local/lib/python2.7/dist-packages/django/forms/widgets.py" in render_options 579. for option_value, option_label in chain(self.choices, choices): Exception Type: ValueError at /student/arrangeuser/ Exception Value: too many values to unpack </code></pre> <p>~ </p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload