• 复习orm单表查询


     1 昨日内容回顾
     2 
     3 Cookie
     4 因为http协议是无状态的,那么就导致服务端与客户端没办法维持回话,所以浏览器出了个技术叫做cookie,基于cookie就能完成会话跟踪.
     5 Cookie 相当于一个空的字典,浏览器每次访问服务器都会携带cookie,那么服务器就可以通过cookie设置一些标识或者状态信息,那么将来等浏览器再次访问的时候,服务端就可以通过cookie携带过来的内容来识别用户状态,从而判断是否继续保持这个会话
     6 
     7 session
     8 基于cookie实现,用户访问网站,为了会话,需要在cookie中设置一些用户的信息,但是cookie是保存在浏览器客户端的,那么就没有办法保证部分用户信息的安全性,所以,服务端只在cookie里面放一个sessionid键值对,值一个加密字符串,将来浏览器只要在cookie中携带着sessionid,那么服务端就可以通过sessionid的值获取到这个用户的信息,并基于用户的请求返回对应的信息.
     9 
    10 
    11 
    12 
    13 Makemigrations
    14 Migrate
    15 插入数据:
    16 # for i in range(100):
    17     #     models.UserInfo.objects.create(
    18     #         name='alex%s' % i,
    19     #         password='sb%s' % i,
    20     #     )
    21     #
    22     obj_list = []
    23     for i in range(100):
    24         obj = models.UserInfo(
    25             name='wusir%s'%i,
    26             password='wusirsb%s'%i,
    27         )
    28         obj_list.append(obj)
    29     models.UserInfo.objects.bulk_create(obj_list)
    30 
    31 删除:
    32 models.UserInfo.objects.get(id=1).delete()
    33 models.UserInfo.objects.filter(id=1).delete()
    34 models.UserInfo.objects.all().delete()
    35 
    36 
    37 更新:
    38 models.UserInfo.objects.filter(id=1).update()
    39 
    40 查询:
    41 models.UserInfo.objects.get(id=1)
    42 Q
    43 And  : models.UserInfo.objects.filter(id=1,name=’xx’)
    44 Or :models.UserInfo.objects.filter(Q(id=1)|Q(name=’xx’),p=’xxxxx’)
    45 
    46 Ret = models.UserInfo.objects.filter(id=1,name=’xx’)
    47 
    48 Ret.reverse()
    49 
    50 Ret.first().name    model对象
    51 Ret.last()
    52 
    53 Ret.exists()   
    54 
    55 Ret.count()   数字,统计个数
    56 
    57 Ret.order_by(‘-id’,’-name’)
    58 Ret.exclude(id=2),除了id=2 ,全要  queryset()
    59 
    60 Ret.values(‘name’) queryset([ {‘name’:’xxx’},{‘name’:’xxx2’}  ])
    61 Ret.values_list(‘name’,’xx’)  queryset([ {‘name’:’xxx’},{‘name’:’xxx2’}  ])
    62 
    63 Ret.values(‘name’) .distinct()
    64 
    65 Ret.filter(id__gte=2,id__range=[1,5],name__icontains=’al’)
    66 Ret.filter(id__lte=2)
    67 Ret.filter(id__in=[1,3,6])
    68 Ret.filter(id__range=[1,5])
    69 Ret.filter(name__icontains=’al’)
    70 Ret.filter(name__istartswith=’al’)
    71 Ret.filter(borndate__year__gte=’2019’,borndate__month=’8’,)
  • 相关阅读:
    lazyload【思路】
    图片旋转
    模拟滚动条【大体功能实现】
    Firefox window.close()的使用注意事项
    修改KindEditor的CSS文件
    ownerDocument property
    网易新闻图片展示效果
    关于td不支持position问题
    strcat strncat
    Tcl_FindExecutable
  • 原文地址:https://www.cnblogs.com/ch2020/p/13283099.html
Copyright © 2020-2023  润新知