title: Clean two form fields together
body: <p>I have a custum signup form for my page, and Im trying to create a clean method that could check if user excist when they try to sign up. If they excist, they should not see any warnings.</p>
  
  <p>My model:</p>
  
  <pre><code>class Profile(models.Model):
      user = models.OneToOneField(User)
      external_reference = models.CharField(max_length=500, blank=True)
  </code></pre>
  
  <p>My clean method:</p>
  
  <pre><code>def clean_email(self):
      email = self.cleaned_data['email']
      external_reference = self.cleaned_data['external_reference']
      if User.objects.filter(email=email).exists():
          try:
              #User exist, use form to update user
              Profile.objects.get(external_reference=external_reference, user__email=email)
              return email
          except Profile.DoesNotExist:    
              raise forms.ValidationError(u'Email in use')
  
      return email
  </code></pre>
  
  <p>I get this error: <code>KeyError: 'external_reference'</code></p>
  
  <p>Maybe it only possible to "clean" one field at the time? Is there another way of doing this?</p>