我有Django 1.6和简单的视图类:
class CategoryDetailsView(DetailView):
model = Category
template_name = '/details.html'
queryset = Category.objects.available_categories()
def dispatch(self,*args,**kwargs):
return super(CategoryDetailsView,self).dispatch(*args,**kwargs)
def get_context_data(self,**kwargs):
context = super(CategoryDetailsView,self).get_context_data(**kwargs)
context.update({
'items': ItemCategory.ITEM_CHOICES,'items_categories': ItemCategory.objects.items_categories(),'items_actions_count': Itemaction.objects.something_more(),})
return context
我想提高服务的性能,并且我发现get_context_data
方法调用导致对同一张表的大量SELECT
语句。
请为我建议开始调整Django orm的正确入口,以最大程度地减少查询量。