您好,欢迎访问一九零五行业门户网

flask-one实例详解

安装:
1 pip install flask
启动第一个脚本:
python hello.py   
访问地址:http://127.0.0.1:5000
脚本如下:
1 from flask import flask2 app = flask(__name__)3 4 @app.route('/') #路由指定5 def hello_world():6     return 'hello worlds summerkxy'7 if __name__ == '__main__':  #只有在本例使用的时候才会启动应用,包含该文件的话,不启动应用8     app.debug = true #开启调试模式9     app.run()
其中 app.debug = true 开启调试模式,也可以用app.run(debug=true)中加入参数;好处:在修改程序后不用重新启动应用。
这是最简单的应用。
 1 from flask import flask 2 app = flask(__name__) 3  4 #第一个路由 5 @app.route('/') 6 def hello_world(): 7     return 'hello worlds summerkxy' 8  9 #第二个路由10 @app.route('/summerkxy')11 def summer():  #函数名随意,不可与自带函数名冲突;12     return hello summerkxy13 if __name__ == '__main__':14     app.debug = true15     app.run()
带有参数的url 
1 @app.route('/show/<username>')2 def show_user(username):3     return show %s % username
多参数传递:
1 @app.route('/show/<username>/<age>')2 def show_user(username,age):3     return show +username+ age:+age
参数带有类型:
@app.route(/age/<int:age>)def show_age(age):return show age %d % age
转换器有三种:
int float path
整型 可整型也可浮点型 普通类型,可带斜线
url唯一性对比:
1 @app.route(/about/)2 def show_about():3     return about/4 5 @app.route(/about)6 def show_about1():7     return about
事实上只会匹配到第一个url
构造url  url_for()   #未知
根据请求的的方式,调用不同的函数,从而返回不同内容:
 1 from flask import flask,url_for #url_for暂时没用到 2 from flask import request 3 app = flask(__name__) 4  5 @app.route(/) 6 def index(): 7     return index 8  9 @app.route('/login',methods=['get','post']) #首先会根据methods列表中的元素判断,如果没有找到就报错405方法不允许;10 def login():11     if request.method == 'post':12         return do_the_login()13     else:14         return show_the_login_form()15 def do_the_login():16     return post17 def show_the_login_form():18     return else method19 20 if __name__ == '__main__':21     app.debug = true22     app.run()
引入静态css,js文件
1 @app.route(/hello)2 def hello():3     cssurl = url_for('static', filename='style.css')4     return render_template(hello.html,age=cssurl)5 .html文件中6 <link type="text/css" rel="stylesheet" href="{{ age }}">7 <h1>{{ age }}</h1>
问题:单独一个url返回一个样式,毫无意义,如何传递多个值
使用list/dist即可
向模版文件中传递参数:
1 @app.route(/hello)2 def hello(name='summerkxy'):3     return render_template(hello.html,age=name)#变量名age就是传递到模版文件中的4 .html文件5 <h1>hello {{ name }}</h1>
以上就是flask-one实例详解的详细内容。
其它类似信息

推荐信息