title: clean() got an unexpected keyword argument 'validate_unique'
body: <p>I have a model in Django as follows</p>
  
  <pre><code>class TwoPlanetKeyword(models.Model):
      planet_one = models.ForeignKey(Planet, related_name="planet_one")
      planet_two = models.ForeignKey(Planet, related_name="planet_two")
      keyword_list = models.TextField(max_length=100000)
  
      class Meta:
          verbose_name = 'Keywords for Two Planet Combination'
          unique_together = ['planet_one', 'planet_two']
  
      def __str__(self):
          return "Keywords for two planet combination of {} and {}".format(self.planet_one, self.planet_two)
  
      def clean(self, *args, **kwargs):
          plan_one = self.planet_one
          plan_two = self.planet_two
          try:
              obj_val = TwoPlanetKeyword.objects.get(Q(planet_one=plan_one, planet_two=plan_two) | Q(planet_one=plan_two, planet_two=plan_one))
              raise ValidationError({
                          NON_FIELD_ERRORS: [
                              'This combination exists',
                          ],
                      })
          except TwoPlanetKeyword.DoesNotExist:
              super(TwoPlanetKeyword, self).clean(*args, **kwargs)
  
      def full_clean(self, *args, **kwargs):
          return self.clean(*args, **kwargs)
  
      def save(self, *args, **kwargs):
          self.full_clean()
          super(MyModel, self).save(*args, **kwargs)
  </code></pre>
  
  <p>The idea here is that to basically prevent permutations of fields in the table from being entered as detailed here <a href="https://stackoverflow.com/questions/31740009/prevent-permutations-of-foreign-keys-in-django">Prevent permutations of foreign keys in Django</a>. </p>
  
  <p>This solves the above problem but it gives me a <code>clean() got an unexpected keyword argument 'validate_unique'</code> error when I try to save new entries in the table in Django Admin</p>