title: Django ModelForm - conditional validation
body: <p>I need to add a conditional piece of validation to my ModelForm.</p>
  
  <p>Below is my <code>Listing</code> Model.</p>
  
  <pre><code>LISTING_TYPES = (
      ('event', 'event'),
      ('release', 'release')
  )
  
  class Listing(models.Model):
      title = models.CharField(max_length=255, verbose_name='Listing Title')
      type = models.CharField(max_length=255, choices=LISTING_TYPES, verbose_name='Listing Type')
      slug = models.SlugField(max_length=100)
      content = models.TextField(verbose_name='Listing Overview')
      competition = models.TextField()
      date_start = models.DateTimeField()
      time_start = models.CharField(max_length=255)
      date_end = models.DateTimeField()
      time_end = models.CharField(max_length=255)
      pub_date = models.DateTimeField('date published', auto_now_add=True)
      venue = models.ForeignKey(Venue)
  
  class ListingForm(ModelForm):
      date_start = forms.DateField(input_formats=DATE_INPUT_FORMATS)
      date_end = forms.DateField(input_formats=DATE_INPUT_FORMATS)
      class Meta:
          model = Listing
  </code></pre>
  
  <p>Venue should <strong>only</strong> be required if type == 'event'. If type == 'release', I want venue to be required=False </p>
  
  <p>How can I go about this?</p>
  
  <p>Thanks</p>