title: Django error: got multiple values for keyword argument
body: <p>I get the following error when instantiating a Django form with a the constructor overriden:</p>
  
  <pre><code>__init__() got multiple values for keyword argument 'collection_type'
  </code></pre>
  
  <p>The <code>__init__()</code> function (shown below) is exactly as written this but with <code># code</code> replaced with my logic. Asside from that I am essentially overriding the form's (which is a ModelForm) constructor.</p>
  
  <pre><code>def __init__(self, collection_type, user=None, parent=None, *args, **kwargs):
      # code
      super(self.__class__, self).__init__(*args, **kwargs)
  </code></pre>
  
  <p>The call that creates the error is shown here:</p>
  
  <pre><code>form = CreateCollectionForm(
      request.POST, 
      collection_type=collection_type, 
      parent=parent, 
      user=request.user
  )
  </code></pre>
  
  <p>I cannot see any reason why the error is popping up.</p>
  
  <p>EDIT: Here is the full code for the constructor</p>
  
  <pre><code>def __init__(self, collection_type, user=None, parent=None, *args, **kwargs):
      self.collection_type = collection_type
      if self.collection_type == 'library':
          self.user = user
      elif self.collection_type == 'bookshelf' or self.collection_type == 'series':
          self.parent = parent
      else:
          raise AssertionError, 'collection_type must be "library", "bookshelf" or "series"'
      super(self.__class__, self).__init__(*args, **kwargs)
  </code></pre>
  
  <p>EDIT: Stacktrace</p>
  
  <pre><code>Environment:
  
  Request Method: POST
  Request URL: http://localhost:8000/forms/create_bookshelf/hello
  Django Version: 1.1.1
  Python Version: 2.6.1
  Installed Applications:
  ['django.contrib.auth',
   'django.contrib.contenttypes',
   'django.contrib.sessions',
   'django.contrib.sites',
   'libraries',
   'users',
   'books',
   'django.contrib.admin',
   'googlehooks',
   'registration']
  Installed Middleware:
  ('django.middleware.common.CommonMiddleware',
   'django.contrib.sessions.middleware.SessionMiddleware',
   'django.contrib.auth.middleware.AuthenticationMiddleware')
  
  
  Traceback:
  File "/Library/Python/2.6/site-packages/django/core/handlers/base.py" in get_response
    92.                 response = callback(request, *callback_args, **callback_kwargs)
  File "/Library/Python/2.6/site-packages/django/contrib/auth/decorators.py" in __call__
    78.             return self.view_func(request, *args, **kwargs)
  File "/Users/marcus/Sites/marcuswhybrow.net/autolib/libraries/forms.py" in     create_collection
    13.           form = CreateCollectionForm(request.POST,     collection_type=collection_type, user=request.user)
  
  Exception Type: TypeError at /forms/create_bookshelf/hello
  Exception Value: __init__() got multiple values for keyword argument 'collection_type'
  </code></pre>