title: How to display empty_label for non-mandatory fields with django-filter?
body: <p>I've applied the basic example of django-filters with the following setup:
  models.py</p>
  
  <pre><code>class Shopper(models.Model):
      FirstName = models.CharField(max_length=30)     
      LastName = models.CharField(max_length=30)      
      Gender_CHOICES = (
          ('','---------'),
          ('Male','Male'),
          ('Female','Female'),
      )
      Gender = models.CharField(max_length=6, choices=Gender_CHOICES, default=None)
          School_CHOICES = (
          ('','---------'),
          (u'1', 'Primary school'),
          (u'2', 'High School'),
          (u'3', 'Apprenticeship'),
          (u'4', 'BsC'),
          (u'5', 'MsC'),
          (u'6', 'MBA'),
          (u'7', 'PhD'),
      )
      HighestSchool = models.CharField(max_length=40, blank = True, choices = School_CHOICES,default=None)
  </code></pre>
  
  <p>views.py:</p>
  
  <pre><code>def shopperlist(request):
      f = ShopperFilter(request.GET, queryset=Shopper.objects.all())
      return render(request,'mysapp/emailcampaign.html', {'filter': f})
  </code></pre>
  
  <p>urls.py:</p>
  
  <pre><code>   url(r'^emailcampaign/$', views.shopperlist, name='EmailCampaign'),
  </code></pre>
  
  <p>template:</p>
  
  <pre><code>{% extends "basewlogout.html" %}
  
  {% block content %}
  {% csrf_token %}
      &lt;form action="" method="get"&gt;
      {{ filter.form.as_p }}
      &lt;input type="submit" name="Filter" value="Filter" /&gt;
      &lt;/form&gt;
  
          {% for obj in filter %}
              &lt;li&gt;{{ obj.FirstName }} {{ obj.LastName }} {{ obj.Email }}&lt;/li&gt;
          {% endfor %}
  
         &lt;a href="{% url 'UserLogin' %}"&gt; 
         &lt;p&gt; Return to home page. &lt;/p&gt; &lt;/a&gt;
  {% endblock %}
  </code></pre>
  
  <p>forms.py:</p>
  
  <pre><code>class ShopperForm(ModelForm):
  
      class Meta:
          model = Shopper
  </code></pre>
  
  <p>The empty choices <code>('','---------')</code> were added to make sure django-filters will display it during filtering and let that field unspecified. However, for the non-mandatory <code>HighestSchool</code> field it displays twice when using the model in a create scenario with <code>ModelForm.</code> I.e. <code>('','---------')</code> should not be listed for non-mandatory field. Then the empty_label cannot be selected during filtering...</p>
  
  <p>How can this be solved with having one empty_label listed during the create view and have the possibility to leave both mandatory and non-mandatory fields unspecified during filtering?</p>