跨表查询
基于对象(子查询)
基于queryset和__ (join查询)
分组查询
Publish.objects.all().annotate(c=Count("book"))
F与Q
Ajax
$.ajax({ url:"", type:"", data:{a:1,b:2}, success:function(data){ } })
cookie
(1)获取cookie request.COOKIE (2)设置cookie response.set_cookie("","",)
session
(3)request.session["user_id"]=user.pk request.session["username"]=user.user ''' if request.COOKIE.get("sessionid"): 更新 else: {"user_id":1,"username":"alex"} 第一步: 生成随机字符串: vwerascxh24asdasdasdsd 第二步: 在django-sesion表生成一条记录: session-key session-data vwerascxh24asdasdasdsd {"user_id":1,"username":"alex"} 第三步: obj.set_cookie("sessionid",vwerascxh24asdasdasdsd) ''' (4)request.session.get("user_id") ''' 1 request.COOKIE.get("sessionid"):vwerascxh24asdasdasdsd 2 在django-sesion表查询一条记录:session-key=vwerascxh24asdasdasdsd 3 session-data({"user_id":1,"username":"alex"}).get("user_id") '''
分页
中间件
forms组件
用户认证(cookie session)
大前提: 用户表:auth_user from django.contrib import auth user=auth.authenticate(username=user,password=pwd) auth.login(request,user) # request.user:当前登录对象 auth.logout(request) from django.contrib.auth.models import User User.objects.create_user(username="egon",password="egon1234")
作业:
读源码:
django.contrib.sessions.middleware.SessionMiddleware
django.contrib.auth.middleware.AuthenticationMiddleware
1.
2.
3.
4.
5.
6.session value的生成
生成随机字符串。md5摘要
7.
8.def login(request):
9.删除session之flush
10.insert插入之实现
11.
想一种 range不从零开始 的方法
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
渲染方式一:form.as_p
26.CSS怎么用
27.
28.
全局钩子,局部钩子,hook
29.
30.
31.
32.
以上是四个用户认证组件
33.
1.系统首页的文章列表(标题,头像,摘要,文章发布信息)文章表--用户表 2.个人站点页面的设计(header--左边【分类,标签,日期】--右边【文章列表】)分类表---用户表----文章表 标签表 3.点赞 4.评论表
表--字段--绑定关系
9张表左右