Найти - Пользователи
Полная версия: оптимизация запросов
Начало » Django » оптимизация запросов
1
ilnur
class Model1(models.Model):
   name = models.CharField(...)
   ...
class Model2(models.Model):
   link = models.ForeignKey(Model1)
   ...
   def get_some(self):
      return self.model1_set.name
# 1 запрос
model = Model2.objects.all()[0]
# 2 запрос
name = model.get_some()

в данном примере у меня два запроса, так?
Как сократить его до одного? не исключая метод get_some.

в реальности, я получаю объекты модели, вызываю их методы. И каждый вызов метода это запрос к БД.
FishHook
self.model1_set.name
Ильнур, оно так не будет работать, по крайней мере не должно
Так-то так надо
self.model1_set.all()[0].name
ilnur
спасибо.
Я думал что можно как то это сделать..

Мне надо именно так, как в первом посте, т.е. Вызывая метод объекта модели.
И если этих объектов 100к, то мелких запросов …_set будет 100к
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB