开发工具:pycharm
简单实现session的登录注销功能
Django配置好路由分发功能
urlpatterns = [ path('admin/', admin.site.urls), path('app01/', include('app01.urls')) ]
app01/urls.py的路由如下
urlpatterns = [ path('login/', views.login), path('index/', views.index), ]
app01/views.py视图的内容如下
# Create your views here. from django.shortcuts import HttpResponse, render, redirect def login(request): if request.method == 'GET': return render(request, 'login.html') elif request.method == 'POST': user = request.POST.get('username') pwd = request.POST.get('pwd') if user == 'song' and pwd == '123': # 往session里写入数据的时候,Django会自动生成随机码,发送给cookie,然后自己保留一份跟cookie一一对应 request.session['username'] = user request.session['is_login'] = True # 路径已经要写全,把/app01带上,以前好像不带是可以的 return redirect('/app01/index/') else: return render(request, 'login.html') def index(request): # 拿到cookie对应的随机码,来查找session里的is_login字段是否True,如果通过则表示通过 if request.session.get('is_login', None): return render(request, 'index.html') else: return HttpResponse('滚') def logout(request): # 清除当前对应session所有数据 request.session.clear() # 路径已经要写全,把/app01带上,以前好像不带是可以的 return redirect('/app01/login')