美文网首页
Django模板中的数据到后台

Django模板中的数据到后台

作者: 上帝大人 | 来源:发表于2019-04-24 20:17 被阅读0次
    • 在模板中(html页面)的input或者select要有其各自的name,并且这些要放在form中,form的method为post,action属性为/app名字/视图处理函数,然后在相应的视图处理函数中就可以用request.POST.get(' input,select的名字 ')。
    • 其中要说明的一点是,app名字前面有斜线,他表示在一个ip地址的根目录中,不加斜线,会在当前的路径下。例如

    你现在在http://127.0.0.1:8000/app/login,然后调用函数后,带斜线会在http://127.0.0.1:8000/,而不带斜线可能会在http://127.0.0.1:8000/app/login/你的函数,错误的书写可能会导致404错误。总之,带斜线就回到了根,不带就是在当前目录下

    • 在前端页面可以控制输入的信息,利用js,字段不能为空这种基本的可以在input的属性中设置其required属性,表示可以为空,没有值。

    • return的对象 可以是HttpResponse(' 字符串')还可以是render(' 模板中的页面 '),还可以重定向(redirect(‘login/welcom’))没带html为另一个页面,但是必须和url建立起关联,此时,urls.py中,有一个path('welcom',views.函数名)

    状态的保持

    • 可以是cookie,保存在客户端,但是不安全,可以是session,保存在服务器端。

    怎么创建cookie呢,我们在函数中创建一个HttpResponse对象,然后调用这个对象的 . set_cookie方法,然后再返回这个HTTPResponse对象。

    当然cookie的值是可以被读取的(cookie的中存储的是键值对假设我们存的是ck: zhangsan),我们可以在这个函数加个条件

    text= '  '
    if( ck in request.COOKIE)
            text = request.COOKIE.get(' ck ')
    return HttpResponse( text )
    
    • 当我们第一次访问之前,cookie中是没有任何东西的,所以返回值是空白,访问后,我们给它设置了一对键值对,ck:shangsan,当我们第二次访问的时候,有ck的信息,所以返回值是zhangsan。

    session的创建要使用request对象

    放  request.session[ ' 键' ] = 值
    取 request.session.get( ' 键 ' )
    清除session中值的部分 request.session.clear()
    清除session整条的数据 request.session.flush()
    删除session中指定的键和值 del request.session[ ' 键 ' ]
    设置session的超时时间 request.session.set_expiry(value)
           value为整数时,读秒结束后清除session
           value为0时,关闭浏览器就清除session
            value为None时,表示session的值永不过期
    

    相关文章

      网友评论

          本文标题:Django模板中的数据到后台

          本文链接:https://www.haomeiwen.com/subject/bwvggqtx.html