title: Django autocomplete_light and cities_light - invalid choice
body: <p>I have a model with a location field that is mapped to cities_light.city and I'm using an autocomplete field that allows users to type in their city and have it autocompleted to the correct/valid location model instance.</p>
  
  <pre><code>class Profile(models.Model):
      location = models.ForeignKey(City, blank=True, null=True)
  
  class ProfileForm(ModelForm):
  
      class Meta:
          model = Profile
          fields = ('location')
          widgets = {
              'location': autocomplete_light.TextWidget(CityAutocomplete, autocomplete_js_attributes={'placeholder':'City, Country', 'minimum_characters':4})
          }
  </code></pre>
  
  <p>The form field works exactly as advertised and a list of autocomplete options are shown. However when I save the form/model I get a validation error which seems to be caused by the field not being translated into the primary key of the City model instance.</p>
  
  <pre><code>Select a valid choice. That choice is not one of the available choices.
  </code></pre>
  
  <p>I'm guessing I need to extend the AutocompleteModelBase like the CityAutocomplete implemented below but I'm not sure how and I've been unable to find a working example. </p>
  
  <pre><code>class CityAutocomplete(autocomplete_light.AutocompleteModelBase):
      search_fields = ('search_names',)
  </code></pre>
  
  <p><a href="https://github.com/yourlabs/django-cities-light/blob/master/cities_light/contrib/autocompletes.py" rel="nofollow">https://github.com/yourlabs/django-cities-light/blob/master/cities_light/contrib/autocompletes.py</a></p>
  
  <p>Thank for any assistance and I'm sorry if my question is poorly formatted.</p>