Flask的奥秘一
2020-07-14 05:46
246 查看
一、什么是flask?与Django有什么区别?
- flask和django一样都是python的web框架
- flask是比较轻量级的web框架,不像django一样内置非常丰富的组件,但是有非常丰富的第三方组件,适合用于开发中小型的web应用
- django是重量级的web框架,内部有非常多的组件,适合开发大型的web应用
二、如何简单的使用flask
第一步当然是要简单运行一下flask,显示hello world了
# 1. 导入flask的包 from flask import Flask # 2. 实例化Flask对象 app = Flask(__name__) # __name__ : 表示当前的文件名称 # 3.添加路由方法 @app.route("/") def index(): return "hello world" # 程序的运行入口 if __name__ == '__main__': app.run()
然后运行,就会有如下显示:
着就表示成功了,访问本地地址就会有hello world 的字样了
三、如何返回一个HTML页面
要返回HTML页面,这时就要导入flask中render_template模块,然后在项目中创建templates文件夹,在这个文件夹里面放入自己的html文件,接着在路由方法中返回render_template(文件名称)就OK了,flask中默认的模板文件在templates文件夹下面,代码如下:
# 导入Flask模块和render_template模块 from flask import Flask, render_template # 2. 实例化Flask对象 app = Flask(__name__) # __name__ : 表示当前的文件名称 # 3.添加路由方法 @app.route("/") def index(): return render_template("index.html") # 程序的运行入口 if __name__ == '__main__': app.run()
这样就可以显示一个html页面了
如果想要传递数据的话就在 render_template(“index.html”) 方法后面加上键值对参数即可
如何在html页面中调用呢?
{{键名}} 就是这个简单的式子就可以使用传递过来的数据了
如果要使用python代码的话就用{% %} 包裹python代码就好了
路由方法如何接收html传送过来的数据呢?
1.导入flask中request模块
2.使用request.form.get()方法获取数据,参数为提交数据的名称
四、flask-用户登录验证实例
1.创建项目
2.在项目中创建templates文件夹来存放html文件,我这个里面存放一个login.html文件
<body> <h1>用户登录</h1> <form method="post"> <pre> name:<input type="text" name="username"> pwd:<input type="password" name="password"> <input type="submit" value="登录"> {{message}} </pre> </form> </body>
3.创建一个py文件,代码如下:
from flask import Flask, request, render_template # 实例化flask对象 app = Flask(__name__) @app.route('/') def index(): msg = "" username = request.form.get("username") password = request.form.get("password") if username == 'jock' and password == '123': msg = "登录成功" elif username is None and password is None: msg = "" else: msg = "账户或密码错误" return render_template("login.html", message=msg) if __name__ == '__main__': # 监听用户请求 # 如果用户请求到来。执行app的__call__方法 app.run()
之后启动项目,即可访问。
ps:这是本人学习flask的笔记,不喜勿喷,谢谢,如果有建议、错误可以私发消息给我,加以改正
我的github上面也相关的笔记代码,网址如下:
GitHub-flask
相关文章推荐
- Flask的奥秘五
- Flask的奥秘四
- Flask的奥秘三
- Flask的奥秘二
- flask笔记(2)
- flask 单元测试
- Flask+Nginx+Gunicorn+Redis+Mysql搭建一个小站
- Dec-21th-Flask-note
- 白帽学院靶场之编辑器的奥秘(一)
- 2018最新网易云课堂Python Flask框架全栈开发
- python web开发 之 flask教程(二)
- 网易云课堂Python Flask框架全栈开发(200课全)
- windows 7 下安装eclipse,python,pydev,flask步骤
- Flask01
- Flask 安装和配置(RedHat环境)
- flask中的蓝图实现模块化的应用
- Flask 多文件基本结构
- Ubuntu 14.04 配置 Nginx + uWSGI 托管 virtualenv 下 Flask 应用的一点注意事项
- Flask入门(五)~request模块的属性及上下文
- 【翻译】使用nginx作为反向代理服务器,uWSGI作为应用服务器来部署flask应用