ORM-性能相关

ORM性能相关

    - ORM性能相关
    
        1.     [{} ]
            all_users = models.User.objects.all().values('name','age','role__name')
            
        2. [ 对象 ]
            all_users = models.User.objects.all()
            用的时候注意,只拿自己表中的字段,别跨表
            
        3. select_related  (外键、一对一)
        做联表只查一次
            all_users = models.User.objects.all().select_related('role')
            
        4. prefetch_related (role)
        做子查询,查询多次,跨几张表就查询几次
            all_users = models.User.objects.all().prefetch_related('role')
            
        5. only
            all_users = models.User.objects.all().only('name')
            用的时候注意,只拿自己指定的字段
        6. defer
            all_users = models.User.objects.all().defer('name')
            拿指定字段之外的字段,取反的意思

 

posted @ 2020-10-27 10:51  断浪狂刀忆年少  阅读(74)  评论(0编辑  收藏  举报