

def get_db_prep_lookup(self, value, connection):
    if (len(value) != 2):
        raise ValueError('relate must be passed a two-tuple')
    backend_op = connection.ops.gis_operators[self.lookup_name]
    if hasattr(backend_op, 'check_relate_argument'):
        backend_op.check_relate_argument(value[1])
    else:
        pattern = value[1]
        if ((not isinstance(pattern, six.string_types)) or (not self.pattern_regex.match(pattern))):
            raise ValueError(('Invalid intersection matrix pattern "%s".' % pattern))
    return super(RelateLookup, self).get_db_prep_lookup(value, connection)

dataset/ETHPy150Open django/django/django/contrib/gis/db/models/lookups.py RelateLookup.get_db_prep_lookup/original