Validating an Autocomplete field in Django

Posted by anonymous coward on Stack Overflow See other posts from Stack Overflow or by anonymous coward
Published on 2010-05-11T02:38:04Z Indexed on 2010/05/11 2:44 UTC
Read the original article Hit count: 240

I have models similar to the following:

class Band(models.Model):
    name = models.CharField(unique=True)

class Event(models.Model):    
    name = models.CharField(max_length=50, unique=True)       
    bands = models.ManyToManyField(Band) 

and essentially I want to use the validation capability offered by a ModelForm that already exists for Event, but I do not want to show the default Multi-Select list (for 'bands') on the page, because the potential length of the related models is extremely long.

I have the following form defined:

class AddEventForm(ModelForm):
    class Meta: 
        model = Event
        fields = ('name', )

Which does what is expected for the Model, but of course, validation could care less about the 'bands' field. I've got it working enough to add bands correctly, but there's no correct validation, and it will simply drop bad band IDs.

What should I do so that I can ensure that at least one (correct) band ID has been sent along with my form?

For how I'm sending the band-IDs with auto-complete, see this related question: http://stackoverflow.com/questions/1528059/

© Stack Overflow or respective owner

Related posts about django

Related posts about django-modelforms