title: Django: text-input instead selection on foreignkey
body: <p>I want to create a messaging function in ma django app. User should be able to write other users a textmessage. </p>
  
  <p>models.py</p>
  
  <pre><code>from django.contrib.auth.models import User
  class Message(models.Model):
      recipient   = models.ForeignKey(User, null=True)
      contentDescription = models.CharField(max_length=1000, null=True)
  </code></pre>
  
  <p>By default, with no forms.py entry I get a selection, which will be unuseful with many users. I want the message sender to type in the user name, or in the first step the user id (which I could resolve with ajax from the name) .</p>
  
  <h2>Integer</h2>
  
  <p>But with forms.py</p>
  
  <pre><code>recipient =         forms.IntegerField(    widget=forms.NumberInput , required=False,)
  </code></pre>
  
  <p>I get: </p>
  
  <pre><code>    Cannot assign "11": "Transport.recipient" must be a "User" instance.
  </code></pre>
  
  <h2>ChoiceField and NumberInput</h2>
  
  <p>with:</p>
  
  <pre><code>recipient =          forms.ChoiceField(  widget=forms.NumberInput, required=False,)
  </code></pre>
  
  <p>I get the error message "not valid"</p>
  
  <p>Is it possible to write the foreignkey 'manually' at all?</p>