from django.db import models from django.db import connection class Square(models.Model): root = models.IntegerField() square = models.PositiveIntegerField() def __unicode__(self): return "%s ** 2 == %s" % (self.root, self.square) if connection.features.uses_case_insensitive_names: t_convert = lambda x: x.upper() else: t_convert = lambda x: x qn = connection.ops.quote_name __test__ = {'API_TESTS': """ #4896: Test cursor.executemany >>> from django.db import connection >>> cursor = connection.cursor() >>> opts = Square._meta >>> f1, f2 = opts.get_field('root'), opts.get_field('square') >>> query = ('INSERT INTO %s (%s, %s) VALUES (%%s, %%s)' ... % (t_convert(opts.db_table), qn(f1.column), qn(f2.column))) >>> cursor.executemany(query, [(i, i**2) for i in range(-5, 6)]) and None or None >>> Square.objects.order_by('root') [, , , , , , , , , , ] #4765: executemany with params=[] does nothing >>> cursor.executemany(query, []) and None or None >>> Square.objects.count() 11 """}