您的位置:首页 > 其它

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

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: