Django什么是构建查询的最佳方法

时间:2018-10-31 12:20:06

标签: python django django-rest-framework

我想知道构建查询的方式是什么。 我正在尝试使用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 :(得分:0)

首先,我将检查优化是否值得。 我使用django-debug-toolbar来制定一些指标。对于SQL请求,您将看到多少个查询以及每个查询花费了多少时间。

然后,我将专注于重要的事情。阅读are thisthis的好资源。

如果您提供了完整的示例,我们可以进行更深入的介绍:模板,模型等