Djangoのunique_together制約のエラーメッセージをカスタマイズする

unique_error_messageをオーバーライドする

class Foo(models.Model):

    driver = models.CharField(max_length=20)
    restaurant = models.CharField( max_length=30)
    age = models.IntegerField()

    class Meta:
        unique_together = (("driver", "restaurant"),)

    def unique_error_message(self, model_class, unique_check):
        if model_class == type(self) and unique_check == ('driver', 'restaurant'):
            return u'ここに自由にメッセージを定義できる'
        else:
            return super(Foo, self).unique_error_message(model_class, unique_check)