我有一个具有嵌套关系的序列化程序,其中需要获取4个额外的表,这可以在循环内部循环内创建循环,并且django ORM是惰性的。我想过使用setup_eager_loading来提高性能。
我有一个Eagerloadingmixin如下
# coding: utf-8
import pandas
import sys
reload(sys)
sys.setdefaultencoding('gbk')
def xls2html():
df = pandas.read_excel('aaa.xls',encoding='gbk')
df.to_html('bbb.html',bold_rows=False)
if __name__ == '__main__':
xls2html()
如果我没有覆盖get_queryset方法,我如何在我的APIView中使用它?
答案 0 :(得分:0)
您可以在获取rents
查询集时使用它:
rents = Rental.objects.all()
rents = self.serializer_class.setup_eager_loading(rents)
这将确保对列表视图和详细视图都使用预先加载。