title: How can I change a Django form field value before saving?
body: <pre><code>if request.method == 'POST':
      userf = UsersModelForm(request.POST)
      username = userf.data['username']
      password = userf.data['password']
      passwordrepeat = userf.data['passwordrepeat']
      email = userf.data['email']
  </code></pre>
  
  <p>I tried this:</p>
  
  <pre><code>    tempSalt = bcrypt.gensalt()
      password = bcrypt.hashpw(password,tempSalt)
      passwordrepeat = bcrypt.hashpw(passwordrepeat,tempSalt)
  
      userf.data['password'] = password
      userf.data['passwordrepeat'] = passwordrepeat
  </code></pre>
  
  <p>But i got error. How can i change the value of <code>userf.data['password']</code> and <code>userf.data['passwordrepeat']</code> before saving?</p>
  
  <p>Error:</p>
  
  <pre><code>AttributeError at /register
  
  This QueryDict instance is immutable
  
  Request Method:     POST
  Request URL:    http://127.0.0.1:8000/register
  Django Version:     1.3.1
  Exception Type:     AttributeError
  Exception Value:    
  
  This QueryDict instance is immutable
  
  Exception Location:     /usr/local/lib/python2.6/dist-packages/django/http/__init__.py in _assert_mutable, line 359
  Python Executable:  /usr/bin/python
  Python Version:     2.6.6
  Python Path:    
  
  ['/home/user1/djangoblog',
   '/usr/lib/python2.6',
   '/usr/lib/python2.6/plat-linux2',
   '/usr/lib/python2.6/lib-tk',
   '/usr/lib/python2.6/lib-old',
   '/usr/lib/python2.6/lib-dynload',
   '/usr/local/lib/python2.6/dist-packages',
   '/usr/lib/python2.6/dist-packages',
   '/usr/lib/python2.6/dist-packages/gst-0.10',
   '/usr/lib/pymodules/python2.6',
   '/usr/lib/pymodules/python2.6/gtk-2.0']
  </code></pre>