美文网首页
跟着销售学python12-post是干嘛的?(10)

跟着销售学python12-post是干嘛的?(10)

作者: 日月山人 | 来源:发表于2015-05-15 14:54 被阅读120次

知识点:
1、python 变量是区分大小写。
2、web.input()
3、防止符号转义
4、数据库的like,%的含义
5、什么是类的操作符重载?
6、gost和get参数冲突了怎么办?

上堂笔记我们很简单的说了http协议, 接下来我们来继续看post能做什么?

网上有很多get和post区别, 我们的重点自己理解,还需要自己实践。

就目前我们掌握的知识:

GET

URL结构中,会用来传递。网站访问url结构,就是用get模式,能用post模式无法访问。

诞生http协议后,是先有get, 后有的post, 再没有post之前,浏览器和服务器是就是通过get传输数据, 具体方法就是url结构,利用url?变量=值来传输。服务器通过get收到
我们来补充一个get代码。

import web
urls =  ('/',index)
app =web.application(urls,gobals())

class Index:
     def GET(self):
            data = web.input()
            return '<h1>' + data.id +'</h1>'
$def with (movies)

$movies

浏览器: http://localhost:8080/?id=2
浏览器显示2
现在可以理解了吧,?代表查询。代表可以使用web.input.
如果是/?id=1&name=jack

POST呢?

用于用户提交数据和服务器互动,比如搜索系统,下面我们来准备一下:

1:数据库move 以前我们建立过

2:app.py

import web
urls = ('/',Index,'/move/(/d+),'Movies')
render = render.template('templates/')
db = web.database( dbn= 'sqlite' , db ='movesite.db') 
app = web.applicationo(urls,gloabls())

class Index:
        def GET:
                  moves = db.select('move')
                  return render.index(moves)
         def  POST:
                    data =web.input()
                    condition = r ' name like "% ' +data.title+ r'%'''
                    searchlist = db.select('move',where = condition,vars=locals())
                     return render.index(searchlist)

if __name__ = '__main__":
        app.run()

$def with (move)

<html>
<head></head>

<body>
<form action='/'  method = 'post'>

<input  type = 'text'  name = 'title' />
<input type='submit' value='搜索‘/>
</form>

<h1>$move</h1>
<h2>年份$move.year</h2>


</body>

</html>


``

   目前上面的程序有问题,错误的地方待修正。


   以上是app.py, 都是自己敲上去的,加强自己的理解,里面有三个新的知识,


+ 第一个是web.input
   [官方文档]( http://webpy.org/cookbook/input.zh-cn )
+第二个是r''
     防止转义字符, 如\t,我们都知道是table,但是我们确实需要\t呢, 这就需要r.
      a = r'\t'
      print a

+第三个是 selct * form  数据库  where  列 like "%name%' ,like的含义和%的含义。
   like: 是模糊查询,如我们要找,张三, 搜索张,就可以找到跟张有关的值相关列。
    % : 代表a%-匹配a开头,如张撒的。
                  %a, -- 匹配a结尾的。



##困惑未解决##:
1、?id=3&name =li
       文档中web.input(id=[]) , 语法错误

      错误, 估计中文翻译,id={}

        函数参数确实奇怪, 如下面:
           data= web.input(name='lixiang',id=3)
            这个属于初始,默认值不过id={}, 应该说的是id=1&id=3






相关文章

网友评论

      本文标题:跟着销售学python12-post是干嘛的?(10)

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