title: Overriding ModelChoiceField with HiddenInput doesn't work
body: <p>I have form which generates from model</p>
  
  <pre><code>class UserProfile(models.Model):
      company = models.ForeignKey(Company)
      user = models.OneToOneField(User)
      department = models.CharField(max_length=100)
      position = models.CharField(max_length=100)
  
  class UserProfileForm(ModelForm):
      company_id = ModelChoiceField(queryset=Company.objects.all(),
                                              widget=HiddenInput())
      class Meta:
          model = UserProfile
          exclude = ('user')
  </code></pre>
  
  <p>But it's doesn't work, and company_id is stay visible select field.
  How I can create hidden field with company id ?</p>