Django, каков наилучший способ построить запрос - PullRequest
0 голосов
/ 31 октября 2018

Интересно, как построить запрос. Я пытался использовать SubQuery или Prefetch, prefetch_related, select_releated, но я не могу получить лучшие результаты, с которых я начинаю.

У меня есть ситуация, когда я получаю экземпляр объекта.

object = get_object_or_404(Object, id=pk)

тогда мне нужно получить больше данных.

object.id, 
object.name, 
object.description,
object.update_frequency,
object.resources.values_list('extension'),
object.tags.values_list('name'),                             
object.resources.count(),
object.resources.values_list('file'),
object.resources.values_list('licence'),
object.edited

каждая строка отличается запросом. Как наилучшим образом уменьшить номер запроса?

1 Ответ

0 голосов
/ 31 октября 2018

Прежде всего, я бы проверил, стоит ли оптимизация. Я использую django-debug-toolbar , чтобы иметь некоторые метрики. Для запроса SQL вы увидите, сколько запросов и сколько времени потрачено на каждый.

Тогда я сосредоточусь на том, что важно. Хорошие ресурсы для чтения - это и это .

Если вы предоставите полный пример, мы можем пойти глубже: шаблон, модель и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...