Извините за формулировку названия, возможно, это неправильный способ сказать это, но я не могу придумать лучшего.
У меня есть модель под названием Люди, и с помощью некоторых средств идентификации группа людей, которых я хочу получить из базы данных, зная их город, улицу и дом, а затем запросив их у базы данных.
class People(models.Model):
town = models.ForeignKey(Town, on_delete=models.CASCADE)
street = models.ForeignKey(Street, on_delete=models.CASCADE)
house = models.ForeignKey(House, on_delete=models.CASCADE)
Я могу получить их по одному, как показано ниже, используя People.objects.get(...)
, однако, когда мне нужно получить доступ ко многим, это вызывает задержку из-за открытия и закрытия соединений с БД.
result = People.objects.get(town_id=tid, street_id=sid, house_id=hid)
Если бы у меня был список запросов, как указано ниже, представляющий tid
sid
и hid
, могу ли я как-то сделать все это в одной транзакции базы данных? Этот список может легко увеличиться до 1000 или более записей.
queries = [
[1, 1, 1]
[1, 1, 2]
[2, 1, 1]
[5, 9, 1]
[13, 40, 2]
]