前面我们介绍了响应处理的两种方式,这边学习如何从数据库获取结果。简单来说,就是从数据库查询数据并显示在前端html页面上。因为涉及到数据库,所以,我们这里先要安装一个数据库软件,这里用mysql,具体看看下面步骤。

1.安装mysql数据库,并创建好数据库和表信息。

数据库Mysql如何安装,请看这篇文章。

表如何创建和填入值,请看这篇文章。

我们演示主要是输出前面两个字段,也就是红圈的位置,其他的字段,可以为空

2.安装mysql python client

因为我们需要用python代码去连接和操作mysql数据库,所以我们需要安装一个mysql python client,如何安装呢,这里你肯定是先安装了python环境,打开cmd窗口,直接输入命令:python -m pip install mysqlclient

3. 创建一个现实文章article的html模板

$def with (r)<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8" /><title>article</title> </head><body><h1>articles list</h1><ul>$for x in r:<li>$x.get('aid') => $x.get('title')</li></ul></body></html>

主要上面第一行,$表示后面跟着是python代码,下面还有一个for循环遍历,用来显示数据库中标的值。把这个article.html放在桌面的templates文件夹下。

4. 修改hello.py内容

import web
import MySQLdb
import MySQLdb.cursorsrender = web.template.render('templates')
urls = ('/article', 'article','/index', 'index','/blog/\d+', 'blog','/(.*)', 'hello'
)
app = web.application(urls, globals())class hello:        def GET(self, name):return render.hello2()class article:def GET(self):conn = MySQLdb.connect(host='localhost',user='root',passwd='root',db='test',port=3306, cursorclass=MySQLdb.cursors.DictCursor)cur = conn.cursor()cur.execute('select * from articles')r = cur.fetchall()cur.close()conn.close()print (r)return render.article(r)class index:def GET(self):query = web.input()return web.seeother("https://www.baidu.com")class blog:def POST(self):data = web.input()return datadef GET(self):# get the request headreturn web.ctx.envif __name__ == "__main__":app.run()

主要看article这个class下GET方法的定义,第一行是连接mysql数据库,需要hostname,用户名和密码,数据库名称,端口,最后表示获取数据格式,这里用字典。cmd用python去运行下hello.py,然后去浏览器打开127.0.0.1:8080/artile,效果如下图。

提示:这里有一个编码的问题,如果在article.html中<h1>中写成中文的,虽然我设置了编码格式是utf-8,但是web.py响应处理打开就是乱码,但是单独运行article.html文件就不会显示乱码,所以,我这个地方都换成了中文。

python web py入门-7-响应处理(下)相关推荐

  1. python web py入门-1-web.py简介和安装

    背景 记录python web.py开发入门学习的过程,主要想通过这个入门,然后继续去学习python Django框架开发课程.目前我的个人技能状态是,稍微懂点selenium webUI自动化测试 ...

  2. python web py入门(1)-web.py简介和安装

    1.web.py 简介 web.py是一个轻量级的python web框架,简单而且功能强大.相对flask和Django,web.py更适合初学者来学习和了解web开发的基础知识. 2.web.py ...

  3. python web py入门(3)-模板

    WEB服务器在生成HTML网页时,有两个选择,一个是从代码里嵌入HTML来生成HTML页面返回,另一个是从HTML代码里嵌入执行代码来生成HTML页面返回.这两种方式,其实都有使用,比如在嵌入式系统里 ...

  4. python web py入门(2)-URL处理

    本文介绍URL映射,在介绍映射之前,我们先了解下什么是URL? URL(Uniform/Universal Resource Locator的缩写,统一资源定位符)是对可以从互联网上得到的资源的位置和 ...

  5. python web py入门(4)-从数据库读取数据显示到网页

    在你开始使用数据库之前,确保你已经安装了合适的数据库访问库.比如对于MySQL数据库,使用mysql-connector客户端来连接. 下载Mysql数据并安装: 从下面的连接里下载到Mysql数据库 ...

  6. python web py入门-4-请求处理(上)

    这篇我们来介绍一下请求处理过程.其实,在前面python中requests做接口自动化的系列讲过请求和响应.服务器需要对客户端发送的请求,进行解析和处理.我们在前面文章介绍的URL映射,每次输入新的U ...

  7. python web py入门(6)-webpy在模板里使用code代码段错误的问题

    像下面这段代码在WEBPY 0.40里会发现出错: $def with (page_posts, page_count, page)$code:grace = 5range = grace * 2st ...

  8. python web py入门(13)- 实现发贴到论坛

    在前面已经说明白了实现登录论坛,当你进入论坛之后,一般就是想发表文章,简称为贴子,那么怎么样把你的文章从浏览器里发送给WEB服务器呢?其实这个过程还是比较复杂的,首先要在浏览器里实现一个编辑器,它是使 ...

  9. python web py入门(14)- 实现从论坛里查看某一主题

    前面介绍了怎么样发贴到论坛,其实论坛之所以吸引人,是因为论坛可以让所有人围绕这一个主题进行深入的讨论和学习.因此,实现论坛里,必须有查看一个主题内容和它所有的评论,在这里就介绍这个过程的实现. 与前面 ...

最新文章

  1. devc++源文件未编译_悬赏万元,重现「木兰」编程语言编译器
  2. 数字内置方法详解(int/long/float/complex)
  3. avenir字体可以商用吗_顶级公司的顶级logo设计原来用的这些字体!附字体下载...
  4. redis笔记_源码_简单动态字符串SDS
  5. 使用Handlerf发送消息或使用Handler轮询时,报错IllegalStateException:This message is already in use.;...
  6. bzoj 2660: [Beijing wc2012]最多的方案
  7. java上传文件的二进制_文件的上传:二进制文件的上传;
  8. POJ 3710 Christmas Game(树删边博弈)
  9. OSChina 初十二乱弹 ——网站都挂了,巴叔被安排出去度假
  10. vscode-设置tab转空格数4为2
  11. java calendar数组_Java Calendar Date使用总结
  12. VAssistX 常用快捷键
  13. 《计算机系统基础》复习——简答题 01
  14. 使用a标签下载文件,解决页面跳转的问题
  15. 小高不太行之前端——html网页制作
  16. fatal: unsafe repository is owned by someone else 的解决方法
  17. MySQL中统计函数的使用
  18. Java剑开天门(二)
  19. 联想计算机的控制面板在哪,Win10创意者的控制面板在哪?
  20. HTML资源未找到,加载资源失败:服务器响应状态为404(未找到)

热门文章

  1. IM即时通讯-3-如何设计消息协议层方案
  2. c语言程序设计学籍信息,c语言学籍信息管理系统设计
  3. 任务调度之Elastic-Job
  4. 你的灯还亮着吗?--走出问题的乌托邦
  5. 继微博之后,.fans建站成饭圈新宠
  6. 破解《航海王-燃烧之血》
  7. 小时候玩的10款经典街机游戏,如今我们都在玩什么?
  8. 电信大数据治理与质量管理
  9. 嵌入式Linux 软件界面,嵌入式Linux下的图形用户界面系统设计
  10. IDEA2022配置Tomcat服务器教程(超细致版)