title: Django: ValueError: too many values to unpack
body: <p>I'm getting a ValueError, and I cannot figure the bug out for the life of me. I am aware that the error means there are more values being passed to a variable than expected (ie, <code>(x, y) = 1, 2, 3</code>), but I don't see why that's a problem here.</p>
  
  <p>This is where the error is (in a views.py file):</p>
  
  <pre><code>## image_pks is just a list of ImageItem primary keys (eg, [1, 2] or [5])
  queryset = ImageItem.objects.filter(pk__in=image_pks)
  ImageInfoFormset = modelformset_factory(ImageItem, fields=('title', 'caption'), extra=0)
  formset = ImageInfoFormset(queryset) ## Error happening here!!!
  </code></pre>
  
  <p>This is what the ImageItem model looks like:</p>
  
  <pre><code>class ImageItem(models.Model):
      user = models.ForeignKey(User)
      upload_date = models.DateTimeField(auto_now_add=True)
      last_modified = models.DateTimeField(auto_now=True)
      library = models.ForeignKey(Library)
      img_big = models.ImageField(upload_to=img_get_file_path)
      img_363 = models.ImageField(upload_to=img_get_file_path)
      title = models.CharField(max_length=50,
                               blank=True)
      caption = models.CharField(max_length=1000,
                                 blank=True)
  </code></pre>
  
  <p>This is the information on traceback:</p>
  
  <p><img src="https://i.stack.imgur.com/AjL3q.png" alt="enter image description here">
  <img src="https://i.stack.imgur.com/Omzb9.png" alt="enter image description here"></p>
  
  <p>And here are the local variables on the traceback:</p>
  
  <p><img src="https://i.stack.imgur.com/om46u.png" alt="enter image description here"></p>
  
  <p>Let me know if you guys need any more information, thanks!</p>
  
  <p><strong>EDIT: here is the entire traceback provided:</strong></p>
  
  <pre><code>Traceback:
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response
    111.                         response = callback(request, *callback_args, **callback_kwargs)
  File "/Users/sgarza62/riotry_master/riotry/backboard_general/views.py" in Backboard_Home
    44.                 formset = ImageInfoFormset(queryset) # TOO MANY VALUES ERROR HERE!
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/forms/models.py" in __init__
    424.         super(BaseModelFormSet, self).__init__(**defaults)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/forms/formsets.py" in __init__
    50.         self._construct_forms()
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/forms/formsets.py" in _construct_forms
    114.         for i in xrange(self.total_form_count()):
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/forms/formsets.py" in total_form_count
    88.             return self.management_form.cleaned_data[TOTAL_FORM_COUNT]
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/forms/formsets.py" in _management_form
    74.             if not form.is_valid():
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/forms/forms.py" in is_valid
    124.         return self.is_bound and not bool(self.errors)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/forms/forms.py" in _get_errors
    115.             self.full_clean()
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/forms/forms.py" in full_clean
    270.         self._clean_fields()
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/forms/forms.py" in _clean_fields
    281.             value = field.widget.value_from_datadict(self.data, self.files, self.add_prefix(name))
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/forms/widgets.py" in value_from_datadict
    205.         return data.get(name, None)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/models/query.py" in get
    358.         clone = self.filter(*args, **kwargs)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/models/query.py" in filter
    624.         return self._filter_or_exclude(False, *args, **kwargs)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/models/query.py" in _filter_or_exclude
    642.             clone.query.add_q(Q(*args, **kwargs))
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/models/sql/query.py" in add_q
    1250.                             can_reuse=used_aliases, force_having=force_having)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/models/sql/query.py" in add_filter
    1056.         arg, value = filter_expr
  
  Exception Type: ValueError at /backboard/
  Exception Value: too many values to unpack
  </code></pre>
  
  <p><strong>EDIT 2</strong>:
  I'm playing around with it, and there's something strange happening. When I change the line <code>queryset = ImageItem.objects.filter(pk__in=image_pks)</code> to <code>queryset = ImageItem.objects.get(pk=10)</code> (where 10 is an arbitrary id), I get the following error: <code>AttributeError: 'ImageItem' object has no attribute 'get'</code>, and <em>the originally problematic line is throwing the error!</em></p>
  
  <p>It's a strange error, because ImageItem is just a normal model. Of course it has the attribute <code>'get'</code>. Does this have something to do with fact that the queryset is first being evaluated on the problematic line (<code>formset = ImageInfoFormset(queryset)</code>)? Is ImageItem being assigned to something else after the query is written, but before it is evaluated?</p>