Python轻量级WEB框架web.py,模板使用

首先是安装web.py,方法有几种,如下

pip install web.py==0.40

easy_install web.py
或者是下载http://webpy.org/install.zh-cn之后再安装
cd C:\Users\Tony\Downloads\webpy-0.40
解压定位到目录之后安装
python setup.py install


WARNING: You are using pip version 19.1.1, however version 19.3.1 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.
若python -m pip install --upgrade pip升级不成功就下面这条语句
python -m pip install --upgrade pip --user

升级之后的pip报错
TypeError: 'module' object is not callable

删除
python -m pip uninstall pip

成功之后测试
python test.py
默认是8080端口,或者指定端口,如python test.py 9999,端口为9999
http://localhost:9999

安装完了之后,开始启动一个web页面,以下使用了三种方式的测试,无模板、有模板、模板嵌套

#!/usr/bin/python
# coding=gbk
import web
#第一部分正则表达式,第二部分接受请求的类名
urls=(
    '/i/(.*)', 'index1',        
    '/m/(.*)','index2',   
    '/c/(.*)','index3',      
) 

app=web.application(urls, globals())
T_tony=web.template.frender("templates/m_tony.html")  #新建templates目录,存放模板文件
C_tony=web.template.render("templates",base="m_common") #使用公用模板m_common.html


#未使用模板
class index1:
    def GET(self, nickname):
        print('你好:', nickname+'!')      #命令行显示
        return 'Hello, ' + nickname + '!'  #web页面显示

#使用模板
class index2:
    def GET(self,nname):
        return T_tony('TonyTitle',nname)

#m_index.html模板,来嵌套m_common.html模板
class index3:
    def GET(self,nname):
        return C_tony.m_index(nname)


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

 m_tony.html

$def with(tname,name1)
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  
<title>$tname</title>  
</head>
<body>
My Friend $name1
</body>
</html>

m_index.html

$def with(fname)
$var t:This is m_index.html
Hi $fname

m_common.html

$def with(msg)
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  
<title>$msg.t</title>  
</head>
<body>
$msg
</body>
</html>

最后运行的结果:

python test.py 9999
http://localhost:9999/i/Tony
Web页面将显示Hello,Tony!


http://localhost:9999/m/Tony
页面的Title是:TonyTitle
内容是:My Friend Tony
查看页面源代码是m_tony.html模板呈现


http://localhost:9999/c/Tony
页面的Title是:This is m_index.html
内容是:Hi Tony
查看页面源代码可以知道,m_common.html公共模板被嵌入进来了,其中m_index.html里的变量也可以被m_common.html使用

发布了46 篇原创文章 · 获赞 9 · 访问量 3641

猜你喜欢

转载自blog.csdn.net/weixin_41896770/article/details/103267221