zoukankan      html  css  js  c++  java
  • django 学习-16 Django会话Cookie

    1、django.admin.py  startproject   cs3

    cd cs3

    django.admin.py   startapp   blog

    2、    vim urls.py

    url(r'^regist/$','blog.views.regist'),       注册
        url(r'^login/$','blog.views.login'),   登录
        url(r'^index/$','blog.views.index'),      跳转界面
        url(r'^logout/$','blog.views.logout'),    注销
    )

    3、vim blog/views.py

    from   django  import  forms
    from django.http  import  HttpResponse
    from django.shortcuts  import  render_to_response
    from  models  import User
    class UserForm(forms.Form):
            username =  forms.CharField()
            password = forms.CharField(widget=forms.PasswordInput)


    def regist(req):
            if req.method == "POST":
                    uf = UserForm(req.POST)
                    if uf.is_valid():
                            username = uf.cleaned_data['username']
                            password = uf.cleaned_data['password']
                            User.objects.create(username=username,password=password)
                            return HttpResponse('ok')
            else:
                    uf = UserForm
            return render_to_response('regist.html',{'uf':uf})

    4、vim blog/templates/regist.html

    <form method="post">
    {{uf.as_p}}
    <input type="submit" value='nice'/ >
    </form>
    5、      python  manage.py syncdb

      python manage.py   runserver

    进入页面去试一试127.0.0.1:8000/regist

    6、vim blog/views.py

    增加这些

     from django.http import HttpResponseRedirect

     def login(req):
     23         if req.method == "POST":
     24                 uf = UserForm(req.POST)
     25                 if uf.is_valid():
     26                         username = uf.cleaned_data['username']
     27                         password = uf.cleaned_data['password']
     28                         users = User.objects.filter(username__exact=username,password__exact=password)
     29                         if users:
     30                                 return HttpResponseRedirect('/index/')
     31                         else:
     32                                 return HttpResponseRedirect('/login/')
     33         else:
     34                 uf = UserForm()
     35         return render_to_response('login.html',{'uf':uf})
     36 def index(req):
     37         return HttpResponse('ok')

    再去试一试127.0.0.1:8000/login   会跳转到index   127.0.0.1:8000/index   直接访问index会返回OK

    6、vim blog/views.py      顺便cp  regist.html  login.html

    def index(req):
            username = req.COOKIES.get('username','')           用cook获取用户名,在网页界面还可以去查找,在freference-->privacy-->选use custome                                                         for settings  history -->show cookies就可以看到了

            return render_to_response('index.html', {'username':username})
    def logout(req):
            response = HttpResponse('logout')
            response.delete_cookie('username')                        cookie 的删除方式
            return response
        7  、 vim blog/templates/index.html        

      <div>

    <h1>welcome {{username}}</h1>
    <a href='/logout/'>logout</a>
    </div>
    这样index下就会有个logout可以选择退出

  • 相关阅读:
    scrollView(3)-相册浏览简单的缩放
    ScrollView(2)轮播图-点击跳转
    定制单元格-cell
    模态视图present
    将博客搬至CSDN
    VBS进行http请求及JSON数据的读取和生成
    igraph安装(R/Python)
    teiid入门
    漫谈设计模式
    MapReduce实例-基于内容的推荐(一)
  • 原文地址:https://www.cnblogs.com/Icanflyssj/p/5134650.html
Copyright © 2011-2022 走看看